2021-08-25C++面试题和vim

:8, 9d
delete表示删除第八到第九行。

/向后查找
/sip 会查找到对应的行

:wq
记住必须在英文模式下点:才会有反应,才能退出!!

:q!不保存就退出,没必要保存

复制:
命令行时输入V进去,hijk选择要复制的行,按y复制!

粘贴:(命令行模式下按p才行)
光标移到指定位置,p进行粘贴。

显示数字序号,可以删去
set nu

:/^ # $/d
可以删掉所有#的注释。

进入行尾?

  1. 红黑树和AVL
    严格平衡二叉树,
    任意节点到叶子节点,每条路径有相同的给节点。
    红必有黑
    根子都红。
    set,map,多路复用epoll,进程调度,虚拟内存。

  2. B+和B
    树中超过2个节点。
    B每个节点都是key-data,节点存数据。B+都存叶子节点,适合分区检索,是MySQL的检索。
    B+树扁平,底部链表存,顺序遍历,是一种改进,存索引不存树。

  3. tcp三次握手
    syn后给随机数+1,确认收到的,是否

操作系统:
管理计算机硬件和软件资源,用户与系统互动,
进程:资源分配,
内存,存储,操作文件系统。

进程线程的区别
资源分配,cpu调度,一个程序至少一线程,

http2.0比1.0

数据未加密,二进制帧和流,分请求优先级,多路复用。

vector容器的删除方法?我 erase,remove,swap

remove和erase,
remove将不和要求的移到容器尾,并不删除!!
是否减少size,
remove释放资源,但没有删()如list中节点。set只有erase

迭代器失效:
连接的内存删一个,后面的迭代器全失效了。如for 中不能用insert,可以erase返回一个新的迭代器。
erase在list返回值下一个节点,vector中无。

inode节点:
硬盘一页0.5k,多个扇区页组成块,文件存取最小单元,4k如。
文件元信息inode(索引节点):创建者UserId|GroupId|读写权限,日期()时间戳,大小字节数,链接数(多少指它),block位置。
inode大小:128字节,太多个也消耗硬盘空间,格式化分数据区和inode区
系统中啊文件名对应inode号码——找到inode信息——找到block ls -i example.txt

软硬链接:
创建的文件名指向inode,没有复制文件。
新建数据是文件路径用inode2保存,两个文件inode节点不一样。

头文件重复引用:编译效率低。使用ifndef… #define … endif

引用计数share_ptr:
AB相互new,循环计数是1,引用计数2,入度和出度,垃圾回收器shared_ptr和weak_ptr(使用这个打破循环引用)
没有引用计数weak_ptr,类似普通指针,可检测到对象是否释放,解决成环问题(无法xigou内存泄露)。把share_ptr的对象赋值给weakptr却不增加计数

每个被管理对象和一个引用计数器关联在一起,Java对象的自动内存管理。
引用次数变为0就释放。编译器配合,赋值函数配合。为每个接口单独维护一个引用计数。

share_ptr允许多指针指向同一个对象,unique_ptr独占对象,不能复制和赋值!!但可以move::给一个unique指针或者vector中

扩容原理:
释放之前内存,将原数据复制过来。gcc两倍
reserve有内存,没初始化。没法按计数访问,[i]不能,只能push_back();
容器预留空间,不真正创建元素对象。

为什么有序用红黑树?avl有序的前提。增加bool-红或黑。还存了父亲。

inline内联优势:上下文切换,进程之间。会增长内存。编译时展开!!
而函数指针要调用!

函数对象:重载操作符(),可携带。operator(),运行时把信息传递给判定函数!!自定义类型生成的对象,**调用操作符如调普通函数!**如greater和less!!

函数指针!函数的指针作为参数。通用性有限。定义指针指向函数。两个函数的传入参数和返回值相同,定义一个结构相似的*f,*f指向其中一个函数,实现这个函数功能。

迭代器:光标,遍访接口,无需容器对象内存分配。
容器与算法中介。每个容器都有一个iterator类。

输入uri——dns解析(应用)——http(应用)——tcp——ip选择路线(IP、ARP)——数据链路层网络相邻节点可靠传输(封装成帧)——————————有http响应——浏览器渲染

自旋锁,不会堵塞cpu,会一直请求,cpu做不了别的事情。防上下文切换。

struct默认public,继承,内存定义|运行时分配。数据结构的集合。

线程间通信?共享地址空间,不必通信,同步互斥做好。

混合加密:信源和线路加密结合。用户明文加密,进入线路又加密。

socket:应用与传输层的抽象层,tcp/ip复杂操作抽象几个接口。进程间通讯方式

事务:要做的事,一个程序执行单元。原子、一致、隔离、持久。
锁:解决隔离的一种机制。防止脏读,嘟嘟。

工厂模式就相当于创建对象的new!!

归并排序是稳定的,稳定指相同的值位置变了吗?快排和堆排不稳定!

Linux子进程生成,vfork创建子父进程共享地址空间,fork,init回收进程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值