最新出炉,字节跳动一二三面面经,看我如何一步一步攻克面试官?

之前一直有朋友让我给大家分享一下大厂的面经。这不,听说最近刚好有个朋友去面试字节拿到了offer,我也是急忙联系到他花费了两天的时间把他的面试经历和面试题以及答案整理出来分享给大家。 朋友背景介绍:非科班(机械),项目是管理系统,本科211,硕士985。 话不多说,面试经历和面试题都整理在下方了 简要版: 一面:4月22日下午5:00-5:40 两个有序链表合并 K个有序链表合并 两道sql题 二面:4月26日 2:00-2:50 最长连续子序列 基础问题 三面:4月28日 5:00 - 5:
分类: 其他 发布时间: 05-19 20:53 阅读次数: 0

gp批量字段大写转小写

CREATE OR REPLACE FUNCTION "ods"."transbln"() RETURNS "pg_catalog"."void" AS $BODY$ DECLARE v_rec record; BEGIN -- ================================================================================== -- 让读书成为一种生活方式。就像吃喝拉撒每天必须要干的事, -- 终有一天你的举止
分类: 其他 发布时间: 05-19 20:53 阅读次数: 0

SpringData JPA 使用原生 SQL

在实现个人博客系统的归档功能的时候,遇上这样的需求: 先把数据库中所有条目的时间按照年月分组,并查询出年月(String)的列表 根据年月字符串查询符合条件的博客,并返回博客列表 由于数据访问层使用的SpringData JPA,所以一般是根据方法命名规则或者编写JPQL来查询数据库。 但是上面两个需求光凭方法命名应该是很难实现,写简单的查询用 JPQL 还行,复杂的查询终究是感觉不如 SQL 顺畅,因此查了查在 JPA 中使用原生 SQL 的方法,总结在这里。 先上代码: /* @Query
分类: 其他 发布时间: 05-19 20:53 阅读次数: 0

layui表格前端格式化时间戳字段

layui.use(['util','table'], function(){ var table = layui.table; var util = layui.util; //... table.render({ //... ,cols: [[ //... ,{field:'commPosttime', width:180, title: '评论时间',templet:function(d){return util.toDateString(d.commPosttime*1000, "yy
分类: 其他 发布时间: 05-19 20:53 阅读次数: 0

JVM字节码(六)

栈帧 每一次函数的调用,都会在调用栈(call stack)上创建并维护一个独立的栈帧(stack frame)。每个独立的栈帧一般包括:方法的局部变量表、动态链接信息、方法的返回地址以及操作数栈等信息。 动态链接是Java比较强大的一点,C++在编译期间就确定好类与类之间的关系,包括地址的偏移量等等。而在Java中,比如存在A类和B类,A类存在对B类的方法调用,在编译期间,他们之间的地址关系其实是还没确定下来的,只有在类加载的时候才能知道地址关系、或者真正开始调用的时候,才能确定目标方法的地
分类: 其他 发布时间: 05-19 20:53 阅读次数: 0

一次性把Java的四种引用说清楚!

前几天在CodeReview的时候,看到了一个用WeakHashMap的代码,进而聊到了WeakReference,再聊到Java四种引用类型。 回想了一下,上次学习Java的强软弱虚四种引用类型,还是在准备面试的时候。平时用得不多,一下子竟然想不清楚它们的区
分类: 编程语言 发布时间: 05-19 20:37 阅读次数: 0

操作系统——2.2-4管程机制

1.管程的定义 管程由三部分组成: (1)局部于管程的共享变量说明; (2)对该数据结构进行操作的一组过程; (3)对局部于管程的数据设置初始值的语句。 (4)还须为管程赋予一个名字。 2.管程的基本特征 (1)局部于管程的数据只能被局部于管程的过程所访问 (2)一个进程只有通过管程内的过程才能进入管程访问共享数据 (3)每次仅允许一个进程在管程内执行某个内部过程
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

poj 3468 A Simple Problem with Integers 树状数组 或 线段树

树状数组的入门题; 传送门 树状数组的写法 代码中bit0是i的零次项 bit1是i的一次项 以后以此类推 在[l, r]加数的时候 写出公式 在l的地方 一次项及以上的直接写 然后在零次项那减去 在r的地方 一次项及以上的减掉之前加上的 然后再零次项那加上“公式化简之后的最终结果 减去 之前在零次项加的那一项” #include <iostream> #include <cstdio> #include <cstdlib> #include <cstring> #include <set>
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

coding如何绑定二次验证码_虚拟MFA_两步验证_身份验证?

Coding.net 是一个面向开发者的云端开发平台,提供 Git/SVN 代码托管、任务管理、在线 WebIDE、Cloud Studio、开发协作、文件管理、Wiki 管理、提供个人服务及企业管理。 coding如何绑定两步验证,确保账户安全? 1.登陆coding平台,找到二次验证绑定界面 登陆coding.net, 点右上角用户头像进行注册登陆。 登陆后点右上角头像-【个人设置】 之后点【两步验证】,到如下界面 同一页面,点【开启两步验证】按钮 开启后,无需下载APP,直接微信搜索“二
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

操作系统——2.2-1信号量机制

1.概念 用户进程可以通过使用操作系统提供的一对原语来对信号量进行操作,从而很方便的实现了进程互 斥、进程同步。 信号量其实就是一个变量 ,可以用一个信号量 来表示系统中某种资源的数量 原语是一种特殊的程序段,其执行只能一气呵成,不可被中断。原语是由关中断/开中断指令实现的。 一对原语:wait(S) 原语和signal(S) 原语,括号里的信号量S是函数调用时传入的一个参数 wait、signal原语常简称为P、V操作。做题的时候常把 wait(S)、signal(S) 两个操作分别写为P(
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

Spark 向数据库导出数据时,如何避免主键重复的问题

有一个需求是: 最近一小时内商品的点击次数 方案是用SparkStreaming 来做,利用窗口可以轻松达到目的,然后再将结果存入数据库,可问题就出现了,因为商品id为主键,这是不能重复的,如何更新呢?这就要用到以下的sql "insert into ads_hour values(?, ?) on duplicate key update count=?" on duplicate key update 意为 如果主键存在则更新
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

LeetCode 697. 数组的度 Degree of an Array (Easy)

class Solution { public: int findShortestSubArray(vector<int>& nums) { //构建哈希表并计算度 unordered_map<int, int> hashMap; int degree = 0; for (int num : nums) degree = max(degree, ++hashMap[num]);
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

journalctl使用

查看某次启动后的日志 默认情况下 systemd-journald 服务只保存本次启动后的日志(重新启动后丢掉以前的日志)。此时 -b 选项是没啥用的。当我们把 systemd-journald 服务收集到的日志保存到文件中之后,就可以通过下面的命令查看系统的重启记录: $ journalctl --list-boots 此时我们就可以通过 -b 选项来选择查看某次运行过程中的日志: $ sudo journalctl -b -1 或 $ sudo journalctl -b 9eaabbc2
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

JSBridge原理

JSBridge就是Native和js之间的桥梁,支持两者之间互相调用。 双向通道: JS向Native发消息:调用Native的功能,拍照,扫码,定位等 Native向JS发消息:返回小勇结果,推送消息,通知JS当前Native状态等 原理: JS调用Native的常见方法有2种: 1. 注入API 注入API,是通过WebView,向JavaScript的Context(window)上注入对象或方法,js直接调用注入的方法,即可执行Native的功能 2. 拦截URL Scheme wx
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

VSCode-Element-Helper

VSCode-Element-Helper
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

操作系统——2.2-2用信号量机制实现进程互斥,进程同步,前驱关系

1.信号量机制实现进程互斥 分析并发进程的关键活动,划定临界区 设置互斥信号量mutex,初值为1 在进入区P(mutex)申请资源 在退出区V(mutex)释放资源 注: 对不同的临界资源需要设置不同的互斥信号量 临界资源:一次仅允许一个进程使用的共享资源 临界区:每个进程中访问临界资源的那段代码称为临界区,每次只允许一个进程进入临界区,进入后,不允许其他进程进入 P,V操作必须成对出现 semaphore mutex = 1; P1(){ ... P(mutex);
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

20199321 2019-2020-2 《网络攻防实践》第十二周作业

1 实践内容 1.1 Web浏览器战争与技术发展 安全困境三要素:复杂性、可扩展性和连通性。 Web浏览器安全威胁位置 针对传输网络的网络协议安全威胁(4、5章) 针对Web浏览端系统平台的安全威胁(7、9章) 针对Web浏览器软件及插件程序的渗透攻击威胁 针对互联网用户的社会工程学攻击威胁 1.2 Web浏览端的渗透攻击威胁——网页木马 存在的技术基础:Web浏览端安全漏洞 安全漏洞的存在位置多样化 利用除微软操作系统平台软件,其他流行应用软件中的安全漏洞,攻击时间窗口更长 影响范围广泛的安
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

在notepad++中实现直接运行python代码

https://www.jb51.net/article/176644.htm
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

c之数组指针学习

#include <stdio.h> int main(int argn ,char *argv[]) { int buf[10] = {1,2,3,4,5,6,7,8,9}; int (*p1)[3] = &buf; int (*p2)[3] = buf; int * p3 = (int*)((int)buf + 1); int test = *((int *)(p1 + 1)); return 0; } 输出结果: Breakpoint
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0

算法之二分法查找

# 二分法查找模板 def bin_search(nums, val): if len(nums) == 0: return -1 left = 0 right = len(nums) - 1 # 当left 和right相邻 或者left等于right的时候停止循环 while left + 1 < right: mid = (left + right) // 2 if nums[mid] == val:
分类: 其他 发布时间: 05-19 20:37 阅读次数: 0