开发算法岗八股技术实战面经containing各大互联网
这份面经是笔者从3月初开始面试到五月初的所有公司的经典面视问题和答案的总结,这里分享一下。有了这份面经,只能说乱杀好吧,是包赢的!剩下做好准备起飞,芜湖!
下个月笔者会更新记录自己的实习过程,想了解的可以关注一下,为秋招做准备。
当然,现在笔者身处公司学习加班(今天本来是休息的),祝各位过期的小朋友节日快乐呐!
new和malloc的区别?
语法:
new 是 C++ 中的运算符,用于动态分配内存并调用对象的构造函数来初始化内存。malloc 是 C 和 C++ 中的函数,用于分配指定大小的内存块,但不会调用对象的构造函数。
类型安全:
new 是类型安全的,它会根据分配的类型来确定所需的内存大小,并返回正确类型的指针。malloc 返回的是 void* 类型的指针,需要手动进行类型转换,容易出错。
构造函数:
new 在分配内存后会调用对象的构造函数,用于初始化对象。
malloc 只是分配了内存空间,不会调用对象的构造函数,需要手动初始化对象。
返回值:
new 返回指向动态分配的对象的指针。
malloc 返回指向动态分配的内存块的指针。
释放内存:
delete 用于释放由 new 分配的内存,并调用对象的析构函数。
free 用于释放由 malloc 分配的内存。
C++里面适合查找的数据结构 ?
std::map 和 std::unordered_map:
std::map 是一个基于红黑树实现的关联容器,它提供了对键值对进行有序存储和快速查找的功能。
std::unordered