来源:weibo.com/p/1001603971174559304753
首先自我介绍,说了下项目,貌似面试官不是很感兴趣,简要地说了下,便问基础,然而基础答的也不好
static的作用
后来问了下static定义的数据放在内存哪里(回答了全局/静态数据区,让具体解释下全局数据区,瞬间懵逼了)
多线程中堆和栈的区别(当时紧张的连基本的,同一个进程中多个线程共有堆,各自有独立的栈,都忘了[委屈])
后来问vector.push_back(1),内存是怎么work的(当时没有往这方面想,vector内存不够时,将内存扩大为原来两倍,将原来数据拷贝到新空间中,并将原来空间释放 //blog.csdn.net/alsmile/article/details/6530149)
最后问了下数组(或者vector)去重复的算法题(如[1,2,3,3,4,5]去重后得到[1,2,3,4,5],答了用hash表做,但是如果数据太稀疏,费空间;后来上网搜了下,对于数组中每个数,查下前面不重复的数据部分中有没有该元素,若有则判断下一个元素;否则将元素添加到不重复数据部分数据后;还有先对数组排序后再去重)