秋招笔试面试总结
笔试面试总结
9.14 手撕代码
字符串相加
思路比较简单,自己调bug调了好久,各种指针问题
对于字符串某些方面的认知还不够
char *="abc";
构造的是字符串常量,存储在代码区,不是可修改的字符串,而且该行代码在VS中会报错
char []="abc";
定义了一个字符串,存储在栈中9.14 手撕代码
区间合并
刚开始没啥思路,就一步一步地写,改了好久改出来了
思路:先排序,然后按左端合并,然后挑选不重复的
还被面试官吐糟qsort()不会,调试手段不熟练
不过面试官还是挺有耐心的,一直看着我改完了9.15 联发科笔试
构造链表并删除其中一个结点,难点在于输入
思路:使用fgets输入字符串进行处理
自测各种示例都没问题,不知道为啥提交一直0%,心塞。9.16手撕代码
一个字符串所能构成的最长回文字符串
用VS写的,程序没跑起来,大概讲了讲思路
基本就是统计字符串的个数
偶数直接算进去,奇数减一
后来查了查,scanf_s输入字符串时要比scanf加一个字符长度的参数,平时VS还是用的有点少啊
问题整理
- c语言编译过程
预处理:展开头文件/宏替换/去掉注释/条件编译 (test.i main .i)
编译:检查语法,生成汇编 ( test.s main .s)
汇编:汇编代码转换机器码 (test.o main.o)
链接:链接到一起生成可执行程序 a.out - 读写锁的实现
- 死锁的解决
- stl
map 红黑树 时间复杂度O(logN)
unordered map 时间复杂度 哈希表 O(1) - 哈希表线性探查问题 h(x)=x
- 快慢指针找环 最优最坏情况分析
- SPI IIC UART对比
- 排序的稳定性分析
- 批处理 实时 分时操作系统的调度区别
- freertos和linux的调度区别
- freertos源码 进程调度
- 循环队列分析
- C++ 左值右值问题
- 堆排序具体分析
- c++一个空类包括的函数
- 单例模式
- sizeof运行阶段