今天晚上约了腾讯的面试,约的是19:30,结果电话19:22就打过来了,昨晚因为今天要预答辩,一晚上没睡着,头晕的不行
19:21腾讯的电话准时打过来
- 问实习在做的工作,然后针对工作内容问了python的装饰器(python我只会用,不知道)
- 了解线程的锁吗?怎么区分是死锁还是死循环(答反了)
- 实习对数据进行了哪些处理(这个地方面试官跟我说了一大堆)
- 编程使用过tcp协议吗(没有)
- 使用过http协议吗,介绍下post(答得不好)
- post和get的区别(答得不好)
- 编程题 y型链表的第一个公共节点(提示下做出来了)
- 一个十进制数有多少种给定二进制表示方法(给定二进制为二进制可以用0,1,2表示吗,例如2可以表示为02,4可以表示为020)
一共35分钟,一个没答上来,凉凉,面试官心里想:这么菜还来面试
在南研所的后山上接的电话,面试完衣服都湿透了,感觉自己好菜啊
反思
装饰器
在Python中有三个内置的装饰器,都是跟class相关的:staticmethod、classmethod 和property。(这个我在写python类的时候经常用到,我真是一个five)死锁
jps -l jstack pid >pid.txt top -p pid -H # 显示线程,并找出cpu利用率最大的线程 printf "%x" 10进制线程id # 转换成为16进制 # 可打开文件pid.txt,查看搜索16进制
死循环CPU利用率高
死锁产生的四个必要条件:- 互斥条件
- 不可剥夺
- 请求与保持
- 循环等待
死锁是不会占用CPU的,在ReentrantLock中,如果线程没有获取到锁,会进入阻塞队列被park了等待被唤醒,因此不会占用CPU
数据处理
TCP协议
HTTP协议:应用层协议
post和get的区别
GET和POST还有一个重大区别,简单的说: GET产生一个TCP数据包;POST产生两个TCP数据包。 长的说: 对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据); 而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。
Y型链表
public class Solution { private int getListNodeLength(ListNode root){ int len=0; while (root!=null){ root=root.next; len++; } return len; } public ListNode FindFirstCommonNode(ListNode pHead1, ListNode pHead2) { int l1=getListNodeLength(pHead1); int l2=getListNodeLength(pHead2); if(l1<l2)return FindFirstCommonNode(pHead2,pHead1); int diff=l1-l2; ListNode first=pHead1; ListNode second=pHead2; for(int i=0;i<diff;i++){ first=first.next; } while (first!=null&&second!=null&&first!=second){ first=first.next; second=second.next; } return first; } }
最后一个面试题,不知道这样写对不对,果然好好思考还是有思路的
public int getRepresentByUniqueTwo(int num) { //找到num最多可以用多少个二进制数表示 int k = 0, cur = 1; while (num >= cur << k) { k++; } return getRepresentByUniqueTwo(num, cur << (k - 1)); } private int getRepresentByUniqueTwo(int num, int cur) { if (num < 0) return 0; if (num == 0) return 1; if (cur == 0) return 0; return getRepresentByUniqueTwo(num, cur >> 1) + getRepresentByUniqueTwo(num - cur, cur >> 1) + getRepresentByUniqueTwo(num - cur * 2, cur >> 1); }
总结
- 状态还是很重要的,前一天晚上因为第二天需要预答辩没有睡着,第二天整天都是昏昏沉沉的,陪导师吃饭我应该果断拒绝掉的
- 任何时候都不要轻言放弃
- 面试选个室内环境(我怕热)
- 继续加油