数据库学习
数据库基础知识
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
给你一个链表,删除链表的倒数第 n
个结点,并且返回链表的头结点。
switch支持使用string吗?1.6,1.7,1.8版本对switch对string的支持
switch支持枚举类型吗?
常见的运行异常都有哪些?
hashMap底层数据结构,如何扩容的?
JVM内存回收,如何判断这块内存不用了,可以回收了?
你知道的设计模式有哪些?spring框架中有哪些用到了这些设计模式?
数据结构:用两个栈实现一个队列。
终止线程的方式?
thread.stop()在java1.8中是什么情况?
如何将三种终止线程的方式进行结合?使线程结束的更加优雅?
MyBatis二级缓存如何实现的?尽可能深入的讲解一下。
二级缓存和一级缓存的区别是什么?
B+树的底层数据结构?相关的原理讲一下。
叶子结点存储的数据是一整条数据还是某个字段?
为什么选用innoDB,什么场景使用innoDB?(innoDB和MyISAM之间的区别)
Redis基本数据类型都有什么?
zset底层如何实现的?用score值保证有序,score值可以重复吗?
如果score值一样,用什么排序?两次取值一样吗?
Redis string单个key最大容量是多少?
string是安全的吗?
Redis主从复制,主从复制的优点是什么?缺点是什么?从库的作用是什么?
遇到过什么问题,怎么解决的?
1.判断链表有环?多种方法
2.数组中只有一个数的出现次数是1,其他数的出现次数都是2次,怎么快速找到这个数–异或操作
一般都会问还有没有其他方法,直到答不上来。
3.B+树VAL的对比
4.linux系统运行缓慢,通过什么命令查看
5.i++操作是否能保证线程安全
6.跳跃表和二叉树对比
7.组合索引(a,b,c),那么where (a= and b> and c=)、(a= and c=)、(b= and c=)会不会用到索引?
8.栈为啥会比堆快
9.C++中的原子变量
10.https的handshake过程
11.悲观锁和乐观锁,并发情况下,非要在这两个中选择一个的话,选哪个?
12.mysql中的锁
13.MySQL中的for update
15.TCP可靠性和拥塞控制
16.time wait的作用
17.DNS的流程
18.怎么判断父子进程
19.可重复读解决了幻读?
20.-rwx——分别是啥?分别对应:文件的所有者、文件的组以及所有其他用户。
手撕代码:
二叉树的非递归中序和后序遍历
面试总时长一个小时,会有提问环节。
第二天收到二面通知。
shopee二面
进程、线程和协程
C++进程怎么创建
大部分时间都在聊项目
手撕代码:
括号生成(leetcode 22)
一、项目:
雪花算法原理、如何解决时钟回拨、为啥顺序的ID
RabbitMQ原理,为啥选这个
异步是啥、有啥缺点、和同步对比
lua+Redis为啥保证原子性、集群下lua失效怎么办
hystrix策略、区别
二、八股:
JVM:
GC
详细说说CMS
JRE和JDK区别
如何判断需要回收
标记整理详细的流程
数据库:
讲讲有啥索引
回表
覆盖、非覆盖
联合
B+和B
B+和Hash
锁:
synchronized和Lock原理上的区别
synchronized锁升级
讲讲AQS
多读少写用啥锁
简历上只要写了的技术栈基本都会问的比较仔细,大家在准备的时候一定要仔细看看自己简历呀。
八股文照常问,问了下线程池之类的。
面试官人还蛮好的,蛮和蔼的,只能说自己技术不到家,还要多多准备,算是一个教训吧以为被了八股文就好了。
算法题先叫我做一个就是两个线程交替增加变量,线程A输出1,3,5,。。。,99,线程B输出2,4,6,8,。。。。,100。这个我用信号量来做的,就是用锁,然后面试官问我有没有其他方法,我说暂时想不到了。总之最后还是写出来了。
然后让我做一个二叉树的右视图。完蛋,二叉树一下想不起来怎么搞了,什么前序遍历,中序遍历忘光了,想了几分钟想不出来就给我换了一个题目
第三个题目是让你找最长不重复 子字符串,我用hashmap做,写是写出来了,但是hashmap的clear指令不知道就用了new hashmap,面试官说你如果这样的话肯定不是O(n)了呀,然后就告诉我clear方法。
为什么你只介绍两个项目,其他的你不说吗?
堆和栈有什么区别? 使用堆有什么好处吗?
重写与重载有什么区别?
static的作用? static函数能不能访问其他非static的变量?为什么?
struct和class的默认访问权限?
接口和抽象基类是什么?有什么区别?
你说的是pimpl,和我抽象基类和接口有啥关系?
子类可以继承多个抽象基类吗,为什么?
引用和指针有什么区别?为什么要用指针、为什么要用引用? 你能不能举一个只能使用指针的场景? 引用的地址可变吗?
static修饰的函数可以被覆盖吗?
了解字符串吗,能不能说说streambuf和stringbuf
操作系统中的多线程是如何实现的?
多线程解决了什么问题?
多线程中为什么存在同步问题?怎么解决同步问题?
你写过多线程吗?怎么写的,什么场景?
TCP怎么保证可靠性?
socket编程相关,你的数据怎么发送的?send、read。。你没有listen accept bind吗?
你对TCP做了哪些优化? 你为什么修改TCP协议栈?
为什么你说局域网环境下可以使用1-ACK重传? 使用3-ACK重传是因为乱序吗?
为什么你传输的包长度在几十~几百字节之间?
如果某个请求响应失败了,你是如何处理的?
你的项目如何保证传输安全?HTTPS传输,是你自己写的吗,还是操作系统实现的?我:….
给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。
请你将两个数相加,并以相同形式返回一个表示和的链表。
你可以假设除了数字 0 之外,这两个数都不会以 0 开头。
Attention机制,尤其是self-attention,在视觉任务的深度特征表征中起着越来越重要的作用。
self-attention通过使用所有位置的成对相似性计算特征的加权和来更新每个位置的特征,以捕捉单个样本内的长期相关性。然而,self-attention具有$n^2$复杂度,忽略了不同样本之间的潜在相关性。
本文提出了一种新的Attention机制,称为外部注意力机制,它基于两个外部的、小的、可学习的和共享的记忆单元,只需使用两个级联线性层和两个归一化层就可以很容易地实现,它可以方便地取代现有流行体系结构中的self-attention。
外部注意力机制具有线性复杂度,隐含地考虑所有样本之间的相关性。关于图像分类,语义分割,图像生成,点云分类和点云分割任务的广泛实验表明,我们的方法为self-attention和其一些变体提供了可比或卓越的性能,具有较低的计算和存储成本。
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
显而易见,像中文这样的标识语言的自然语言处理任务应该受益于这些语言中字形信息的使用。然而,由于字形中缺乏丰富的象形证据,标准计算机视觉模型对字符数据的泛化能力较弱,如何有效地利用字形信息仍有待探索。
在这篇文章中,我们通过提出汉字表示的字形向量Glyce来解决这个问题。
我们有三大创新:(1)利用中国历史文字(如青铜器文字、篆书、繁体字等)丰富文字中的象形证据;(2)我们设计了适合汉字图像处理的CNN结构(称为天田字格-CNN);(3)在多任务学习环境中,我们使用图像分类作为辅助任务,以提高模型的泛化能力。
我们表明,在广泛的中文自然语言处理任务中,基于字形的模型能够一致地优于基于单词/字符ID的模型。我们能够为各种中文自然语言处理任务设置最新的结果,包括标注(NER,CWS,POS),句子对分类,单句分类任务,依存句法分析,以及语义角色标注。例如,该模型在OntoNotes数据集NER上的F1得分为80.6,在BERT上的F1得分为+1.5;在复旦语料库上的文本分类准确率几乎达到99.8%。