![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
cpp面
zwz2011303359
这个作者很懒,什么都没留下…
展开
-
STL的底层实现机制
1.STL的底层实现:STL底层数据结构实现C++ STL 的实现:1.vector 底层数据结构为数组 ,支持快速随机访问2.list 底层数据结构为双向链表,支持快速增删3.deque 底层数据结构为一个中央控制器和多个缓冲区,详细见STL源码剖析P146,支持首尾(中间不能)快速增删,也支持随机访问deque是一个双端队列(double-ended...转载 2018-07-06 11:01:46 · 2405 阅读 · 0 评论 -
大量数据处理方案
1、海量日志数据,提取出某日访问百度次数最多的那个IP。 首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用hash_map进行频率统计,然后再找出频率最大的几个)及相应的频率。然后再在这1000个最...转载 2018-08-18 21:58:51 · 628 阅读 · 0 评论 -
二叉树面试题汇总
版权所有,转载请注明出处,谢谢!http://blog.csdn.net/walkinginthewind/article/details/7518888树是一种比较重要的数据结构,尤其是二叉树。二叉树是一种特殊的树,在二叉树中每个节点最多有两个子节点,一般称为左子节点和右子节点(或左孩子和右孩子),并且二叉树的子树有左右之分,其次序不能任意颠倒。二叉树是递归定义的,因此,与二叉树有关的题目基...转载 2018-08-18 20:10:48 · 217 阅读 · 0 评论 -
Linux进程间通信方式
原文地址::https://www.cnblogs.com/skyofbitbit/p/3651750.html 相关文章1、Linux下进程通信的八种方法----https://www.cnblogs.com/sooner/archive/2013/05/16/3082758.html2、Linux进程间通信——使用信号----http://blog.csdn.net/ljian...转载 2018-08-18 15:41:44 · 172 阅读 · 0 评论 -
volatile 是干什么用的?使用实例有哪些?
1. 为什么用volatile? C/C++ 中的 volatile 关键字和 const 对应,用来修饰变量,通常用于建立语言级别的 memory barrier。这是 BS 在 "The C++ Programming Language" 对 volatile 修饰词的说明:A volatile specifier is a hint to a compiler that an...转载 2018-08-18 15:19:25 · 1332 阅读 · 0 评论 -
CVTE二面问题汇总
1.TCP的黏包问题如何处理?1 什么是粘包现象 TCP粘包是指发送方发送的若干包数据到接收方接收时粘成一包,从接收缓冲区看,后一包数据的头紧接着前一包数据的尾。2 为什么出现粘包现象 (1)发送方原因 我们知道,TCP默认会使用Nagle算法。而Nagle算法主要做两件事:1)只有上一个分组得到确认,才会发送下一个分组;2)收集多个小分组,在一个确认到来时一起发送。...原创 2018-08-17 21:13:55 · 1890 阅读 · 0 评论 -
拼多多第二题
#include <iostream>#include <vector>#include <algorithm>using namespace std;int main() { int number;//球星数量 int vote;//投票数 while(cin>>number>>vote) {...原创 2018-07-23 00:34:40 · 414 阅读 · 0 评论 -
拼多多第一题
#include<iostream>#include <math.h>#include<algorithm>using namespace std;int main(){ int n; cin>>n; int res; int temp; int m; int i=0; double...原创 2018-07-22 23:47:53 · 218 阅读 · 0 评论 -
typeof和Define
typedef是一种在计算机编程语言中用来声明自定义数据类型,配合各种原有数据类型来达到简化编程的目的的类型定义关键字。 #define是预处理指令。下面让我们一起来看。typedef是C语言语句,其功能是用户为已有数据类型取“别名”。 例如: typedef int INTEGER; 这以后就可用INTEGER来代替int作整型变量的类型说明了,如: INTEGER a,b; 用type...转载 2018-07-07 14:17:23 · 1100 阅读 · 0 评论 -
sizeof()的用法
以下运行环境都是一般的,在32位编译环境中1、基本数据类型的sizeofcout<<sizeof(char)<<endl; //结果是1cout<<sizeof(int)<<endl; //结果是4cout<<sizeof(unsigned int)<&l...转载 2018-07-07 13:50:15 · 408 阅读 · 0 评论 -
cpp面试(精华)
CPP面试总结一、CPP语言相关1、虚函数是怎么实现的2、虚函数与纯虚函数3、什么是多态,多态有什么用途。4、结构体与联合体的区别5、指针与引用的区别6、C++程序内存分布7、STL中vector、set、map是怎么实现的8、STL内存是怎么分配和管理的9、sizeof()的值,以及对齐原则10、typedef与#define的区别11、static的作用http://www.cnblogs.c...原创 2018-07-06 11:09:29 · 1779 阅读 · 0 评论 -
智能指针
为什么要使用智能指针:我们知道c++的内存管理是让很多人头疼的事,当我们写一个new语句时,一般就会立即把delete语句直接也写了,但是我们不能避免程序还未执行到delete时就跳转了或者在函数中没有执行到最后的delete语句就返回了,如果我们不在每一个可能跳转或者返回的语句前释放资源,就会造成内存泄露。使用智能指针可以很大程度上的避免这个问题,因为智能指针就是一个类,当超出了类的作用域是,...转载 2018-08-22 21:23:58 · 194 阅读 · 0 评论