Owner: Olimi tags: 通用 date: 2023年10月26日 16:37 status: Published type: Post 每个人应该学习掌握的通用知识: 工作必备知识(附毕业生合同排雷指南 法律必备知识 (经济法、婚姻法等) 消费主义与防诈骗指南 了解所在地区社区机构可办理的业务和可提供的帮助 租房与买房必备知识 增强政治意识 互...
通用知识集
秋招复盘7.18:算法、八股
有一个40亿不重复的unsigned int数据。给出几个数据,快速找出这些数据是否在所有数据中。 思路: 位图:如果数据量不太大,我们可以采用位图法,将每个数都映射到一个二进制位上,可以将所有的数放到一个长度为2^32的位图中,即使用一个unsigned int类型的数组来表示。时间复杂度为O(n) + 查找时间O(1)。 ...
算法题集锦
Owner: Olimi tags: 总结, 见闻分享 date: 2023年10月9日 22:15 status: Published type: Post top-k问题 第 k个max。快排的思路,对pivot二分找order,然后就可以排除一半。平均复杂度是O(n) Dijkstra算法 迪杰斯特拉(Dijkstra)算法是一种用于在图中找到最短路径的算法。这个算法用于找到从...
场景题集锦
Owner: Olimi tags: 总结, 见闻分享 date: 2023年10月9日 22:14 status: Published type: Post 大数据查找 有一个40亿不重复的unsigned int数据。给出几个数据,快速找出这些数据是否在所有数据中。 思路: 位图法:如果数据量不太大,我们可以采用位图法,将每个数都映射到一个二进制位上,可以将所有的数放到一个长度为...
C++魔法汇总
C++字符串分割 在C++中,我们可以使用多种方法来分割字符串。以下是一些常见的方法: 方法一:使用 std::istringstream 和 std::getline 这种方法不依赖于任何第三方库,只需要标准库即可。 #include <vector> #include <sstream> #include <string> std::vect...
C++内存模型
C++11的内存模型是一种规定了多线程并发操作如何交互的规则。这个模型主要由两部分组成:原子操作(atomic operations)和内存顺序(memory orders)。 原子操作 原子操作是一种特殊的操作,它们在执行期间不能被中断。换句话说,原子操作在执行过程中不会被其他线程的操作所影响。C++11为各种基础类型(如int,float,double,指针等)提供了原子版本,它们都...
C++ NEW FEATURE
2023年8月3日 一刷现代C++教程 第 2 章 语言可用性的强化 现代 C++ 教程: 高速上手 C++ 11/14/17/20 - Modern C++ Tutorial: C++ 11/14/17/20 On the Fly GitHub - 0voice/cpp_new_features: 2021年最新整理, C++ 学习资料,含C++ 11 / 14 / 17 / 20 /...
秋招复盘7.25:cpp
C++11中智能指针 C++11中智能指针的分类。是线程安全的嘛,如果不是使用时怎么处理。 在C++11中,提供了四种类型的智能指针: std::unique_ptr: 独特所有权,不能被复制,但可以通过std::move进行所有权转移。 std::shared_ptr: 共享所有权,可以有多个shared_ptr指向同一个对象,shared_ptr使用引用计数来跟踪有多少个...
网络
IO多路复用。poll、select、epoll,区别和异同。不同模式分别在什么情况下进行选择。比如遇到什么样的编程场景,会选择其中一个而不是另一个。 原理和实现: [9.2 I/O 多路复用:select/poll/epoll 小林coding (xiaolincoding.com)](https...
智能指针总结
智能指针 C++11中智能指针的分类。是线程安全的嘛,如果不是使用时怎么处理。 在C++11中,提供了四种类型的智能指针: std::unique_ptr: 独特所有权,不能被复制,但可以通过std::move进行所有权转移。 std::shared_ptr: 共享所有权,可以有多个shared_ptr指向同一个对象,shared_ptr使用引用计数来跟踪有多少个智能指针指向...