04 2017 档案

摘要:网络诊工具有ping, traceroute,nslookup,dig,iproute,tcpdump,wget等。网络故障诊断步骤确认网卡本身是否正常工作,利用ping 127.0.0.1, 其中127.0.0.1是环回地址,如果ping不通说明TCP/IP协议栈有问题确认网卡是否出现物理或驱动故障:使用ping 本主机地址确认能否ping通同网段的其他主机,这一步主要是确认第2层上的网络设备是... 阅读全文
posted @ 2017-04-24 09:10 I呆呆 阅读(945) 评论(0) 推荐(0)
摘要:C++ 标准库对sting的设计思路是:尽可能像基础类型,不至于在操作上引起什么麻烦。基本的操作substr()函数的第一个实参是起始索引值,可有可无的第二个参数是字符个数(不是终点索引),如果没有指定第二实参,那么所有的剩余字符都将被视为子字符串返回。只要以一个索引和一个长度作为参数,string的行为必须遵循下面两个准则索引值必须合法: 该值必须小于string的字符个数(第一个字符索引是0... 阅读全文
posted @ 2017-04-23 16:07 I呆呆 阅读(315) 评论(0) 推荐(0)
摘要:STL提供了很多泛型容器,如vector,list和map。程序员在使用这些容器时只需关心何时往容器内塞对象,而不用关心如何管理内存,需要用多少内存,这些STL容器极大地方便了C++程序的编写。例如可以通过以下语句创建一个vector,它实际上是一个按需增长的动态数组,其每个元素的类型为int整型:stl::vector array;拥有这样一个动态数组后,用户只需要调用push_back方法往里... 阅读全文
posted @ 2017-04-22 22:58 I呆呆 阅读(413) 评论(0) 推荐(0)
摘要:红黑树是一种特殊的二叉查找树。红黑树的每个节点上都有存储位表示节点的颜色,可以是红(Red)或黑(Black)。红黑树,本质上来说就是一棵二叉查找树,但它在二叉查找树的基础上增加了着色和相关的性质使得红黑树相对平衡,从而保证了红黑树的查找、插入、删除的时间复杂度最坏为 \(O(log n)\)。红黑树的性质每个节点或者是黑色,或者是红色。根节点是黑色。每个叶子节点(NIL)是黑色。 注意:这里叶... 阅读全文
posted @ 2017-04-22 20:47 I呆呆 阅读(280) 评论(0) 推荐(0)
摘要:set和multiset会根据特定的排序准则,自动将元素排序。两者不同的之处在于multiset允许元素重复,而set不允许。内部通常以平衡二叉树(也有红黑树)完成自动排序,这样就造成了不能直接更改元素的值,因为这会打乱原来的次序。只要是可依据某排序准则比较的任意类型T都可以成为 \(set\) 或 \(multiset\)构造函数与析构函数 阅读全文
posted @ 2017-04-22 20:01 I呆呆 阅读(214) 评论(0) 推荐(0)
摘要:\(ForwordList\) 中是一个单向链表,始于C++11。是一个行为受限的 \(List\),不能走回头路,凡是\(List\)没有提供的功能,它都不提供。它的优点是内存量较少,行动也略快速。\(ForwordList\) 与 \(List\)的差异\(ForwordList\) 只提供前向迭代器,而不是双向迭代器。因此它也不支持反向迭代器。\(ForwordList\) 不提供成员函数... 阅读全文
posted @ 2017-04-22 17:47 I呆呆 阅读(462) 评论(0) 推荐(0)
摘要:相对于vector的连续线性空间,list就显得复杂许多,与向量(vector)相比,它允许快速的插入和删除,且每次插入或删除一个元素,就配置或释放一个元素空间。因此,list对于空间的运用绝对的精准,一点也不浪费。而且,对于任何位置的元素插入或元素移除,list永远是常数时间。list不仅是一个双向链表,而且还是一个环状双向链表。所以它只需要一个指针,便可以完整实现整个链表。由于list是一... 阅读全文
posted @ 2017-04-22 16:35 I呆呆 阅读(152) 评论(0) 推荐(0)
摘要:vector是单向开口的连续线性空间,deque则是以中双向开口的连续线性空间。所谓双向开口,意思是可以在头尾两端分别做元素的插入和删除操作。从技术的角度而言,vector当然也可以在头尾两端进行操作,但是其头部操作效率奇差、令人无法接受。deque和vector的最大差异:deque允许于常数时间内对头端进行元素的插入或移除操作deque没有所谓容量(capacity)观念,因为它是动态地以分段... 阅读全文
posted @ 2017-04-22 16:06 I呆呆 阅读(276) 评论(0) 推荐(0)
摘要:vector模塑出一个动态数组,但是C++标准中并为要求以动态数组来实现vector。
vector是一种有序集合,可以随机访问,提供随机访问迭代器在末端添加或删除元素,vector的效率就非常好;但在前端删除或插入元素的效率就非常低vector优异效率的秘诀就是分配出“较其容纳元素” 的更多内存vector的容量为什么重要vector的容量一旦超过capacity,就需要重新分配内存vect... 阅读全文
posted @ 2017-04-22 10:12 I呆呆 阅读(292) 评论(0) 推荐(0)
摘要:一个Array也是容器类array的一份实体--模塑出一个static array, 它包覆一个寻常的static c-style array 并提供一个STL容器接口。构造函数Array的注意事项其中的元素是一个有序的集合允许随机访问其迭代器属于随机迭代器其size()的结果总等于N不支持分配器是唯一一个无任何东西被指定为初值时,会被预初始化的容器,这意味着对于基础类型初值可能不明确clas... 阅读全文
posted @ 2017-04-22 09:15 I呆呆 阅读(634) 评论(0) 推荐(0)
摘要:C++标准定义了一系列的容器的共通要求,适用于所有的STL容器,然而由于C++11带来了容器的多样化,因此可能出现若干例外。
初始化: 每个容器都提供了一个default构造函数,一个copy函数和一个析构函数容器提供的通用类型: 阅读全文
posted @ 2017-04-21 23:04 I呆呆 阅读(139) 评论(0) 推荐(0)
摘要:索引问题就是一个查找问题。数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用B树及其变种B+树。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法。这种数据结构,就是索引。为表设置索引要付出代价的:一是增加了数据库的存储空间,二是在插入和修改数据时要花费较... 阅读全文
posted @ 2017-04-20 22:57 I呆呆 阅读(543) 评论(0) 推荐(0)
摘要:Map是一个关联容器,它内部有两个数据,第一个(first)称为关键字(key),第二个(second)称为关键字的值(value),key与value二者是一一对应的(称为pair),且key在map中关键字是唯一的。map内部自建一颗严格意义上的平衡二叉树,对数据有排序功能,因此,map内部数据都是有排序的(less或greater)。\(maps和multimaps\)的内部结构采用二叉平... 阅读全文
posted @ 2017-04-20 16:36 I呆呆 阅读(398) 评论(0) 推荐(0)
摘要:TCP连接的3次握手 首先服务器端调用socket函数(返回一个套接字),然后套接字与地址、端口绑定(bind),然后对端口进行监听(listen),调用accept阻塞等待客户端的连接; 客户端调用socket函数(返回一个套接字),然后连接服务器(connect),如果连接成功,这时客户端与服务器端的建立就建立了客户端通过调用connect进行主动打开,这引起客户端向服务器放送一个 SYN... 阅读全文
posted @ 2017-04-20 15:31 I呆呆 阅读(260) 评论(0) 推荐(0)
摘要:\(OSI \) 7 层网络模型:\(OSI \) 7 层网络模型与TCP/IP 中5层模型的对应关系物理层:电脑要组网,第一件事要干什么?当然是先把电脑连起来,可以用光缆、电缆、双绞线、无线电波等方式。这就叫做"物理层",它就是把电脑连接起来的物理手段。它主要规定了网络的一些电气特性,作用是负责传送0和1的电信号。物理层设备有: 中继器(转发器):将信号整形并放大再转发出去 集线器(Hub... 阅读全文
posted @ 2017-04-18 21:12 I呆呆 阅读(585) 评论(0) 推荐(0)
摘要:图\(G\)是由两个集合\(V\)和\(E\)组成,记为\(G=(V,E)\),其中\(V\)是顶点的有限非空集合,\(E\)是\(V\)中序偶的集合,这些序偶称为边。图的定义与线性表定义的对比:线性表中我们把数据元素叫元素,树中将数据元素叫结点,在图中数据元素,我们则称之为顶点(\(Vertex\))。线性表中可以没有数据元素,称为空表。树中可以没有结点,叫做空树。但是在图结构中,不允许没有顶点... 阅读全文
posted @ 2017-04-18 09:29 I呆呆 阅读(612) 评论(0) 推荐(0)
摘要:十字链存储那么对于有向图来说,邻接表是有缺陷的。关心了出度问题,想了解入度就必须要遍历整个图才能知道,反之,逆邻接表解决了入度却不了解出度的情况,把邻接表与逆邻接表结合起来,这就是十字链表。其中\(tailvex\)是指弧起点在顶点表的下标,\(headvex\)是指弧终点在顶点表中的下标,\(headlink\)是指入边表指针域,指向终点相同的下一条边,\(taillink\)是指边表指针域... 阅读全文
posted @ 2017-04-18 09:28 I呆呆 阅读(1117) 评论(0) 推荐(0)
摘要:进程进程与线程的区别:➀调度的基本单位 ➁是否可见 ➂资源占有量,共享堆区 ➃并发性 ➄进程空间 ➅通信 ➆切换操作系统的特点➀并发 ➁共享 ➂异步 ➃虚拟线程:➀线程ID ➁寄存器组 ➂线程的栈stack ➃共享堆区heap 5、 同步机制 ➀忙则等待 ➁有限等待 ➂空闲让进 ➃让权等待6、 读者和写者问题(读者优先,读写公平)、生产者和消费者问题、哲学家就餐问题7、 死锁 ➀互斥 ➁不... 阅读全文
posted @ 2017-04-18 09:12 I呆呆 阅读(481) 评论(0) 推荐(0)
摘要:树是由\(n (n \ge 0)\)个节点组成的有限集合(记为\(T\))。如果\(n=0\),它是一棵空树;如果\(n \gt 0\),这 \(n\)个节点中存在一个节点作为树的根节点,其余节点可分为\(m (m \ge 0)\)个互不相交的有限集\(T_1、T_2、...T_m,\)其中每个集合本身又是一棵树,称为根节点的子树。「这是一个递归定义」一些基本概念节点的度:节点中拥有的子树个数或者... 阅读全文
posted @ 2017-04-17 22:56 I呆呆 阅读(440) 评论(0) 推荐(0)
摘要:基本概念排序算法的稳定性:如果待排序的表中,存在多个关键字相同的元素,经过排序后这些具有相同关键字的元素之间的相对次序保持不变,则称这种排序算法是稳定的,反之则为不稳定。内排序:排序过程中,整个表都是放在内存中处理,排序时不涉及数据的内、外交换外排序:指能够处理极大量数据的排序算法,外排序处理的数据不能一次装入内存,只能放在读写较慢的外存储器(通常是硬盘)上,外排序通常采用的是一种“排序-归并”的... 阅读全文
posted @ 2017-04-17 22:46 I呆呆 阅读(573) 评论(0) 推荐(0)
摘要:深度优先遍历:也有称为深度优先搜索,简称为\(DFS\)。深度优先遍历其实是一个递归的过程,就像是一棵树的前序遍历。从图中某个顶点\(v\)出发,访问此顶点,然后从\(v\)的未被访问的邻接点出发深度优先遍历图,直至图中所有和\(v\)有路径相通的顶点都被访问到。这里讲到的是连通图,对于非连通图,只需要对它的连通分量分别进行深度优先遍历,即在先前一个顶点进行一次深度优先遍历后,若图中尚有顶点未被访... 阅读全文
posted @ 2017-04-17 22:44 I呆呆 阅读(422) 评论(0) 推荐(0)
摘要:\(B-\)树,即为\(B\)树,也称为多路平衡查找树。\(B\)树所有节点孩子节点最大值称为\(B\)树的阶,通常用\(m\)表示,从查找效率考虑要求\(m \ge 3\)。一棵\(m\)阶\(B\)树或者是一棵空树,或者是满足以下条件的\(m\)次的树:①定义任意非叶子结点最多只有\(m\)个儿子;②根结点的儿子数为\([2, m]\);③除根结点以外的非叶子结点的儿子数为\([⌈m/2⌉, ... 阅读全文
posted @ 2017-04-17 22:43 I呆呆 阅读(537) 评论(0) 推荐(0)
摘要:平衡二叉树(\(Balanced \ Binary \ Tree\))又被称为\(AVL\)树,且具有以下性质:它是一 棵空树或是具有以下性质的二叉排序树:其左右两棵子树的高度差的绝对值不超过 \(1\),并且左右两个子树都是一棵平衡二叉树。二叉树中各节点的平衡因子定义为左子树的高度减去它的右子树的高度。根据定义平衡二叉树的平衡因子只可能是\(-1,0,1\)。只要二叉排序树有一个节点的平衡因子的... 阅读全文
posted @ 2017-04-17 22:16 I呆呆 阅读(1460) 评论(0) 推荐(0)
摘要:二叉排序树又称“二叉查找树”、“二叉搜索树”(简称\(BST\))。二叉排序树:或者是一棵空树,或者是具有下列性质的二叉树:若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值;若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值;它的左、右子树也分别为二叉排序树。从BST性质可推出:按中序遍历该树所得到的中序序列是一个递增的有序序列构造\(BST:\)查找删除:删除一个节点... 阅读全文
posted @ 2017-04-17 22:11 I呆呆 阅读(3239) 评论(0) 推荐(0)
摘要:同一棵二叉树(节点值均不相同)具有唯一的先序、中序、后序序列和层次序列,但不同的二叉树可能具有相同的先序、中序序列、后序序列和层次序列,二叉树的构造就是根据提供的某些遍历序列构造二叉树的结构。由先序序列和中序序列构造二叉树:先序序列提供了二叉树的根节点的信息(任何一棵二叉树的先序序列的第一个节点为根节点),而中序序列提供了由根节点将整个序列分为左、右子树的信息。确定树的根节点:先序遍历的第一个节点... 阅读全文
posted @ 2017-04-17 21:37 I呆呆 阅读(10063) 评论(0) 推荐(0)
摘要:线性表是由 \(n\)个元素\((n \ge 0)\)组成的有限序列,线性表的特征所有数据元素类型相同线性表是由有限个元素构成线性表中的数据元素是与位置是有关的,这一点表明线性表不同于集合,线性表中每个元素都有一个对应的序号,线性表中的元素可以重复出现。线性表的逻辑结构一般表示为:\( a_1,a_2,...,a_{i-1},a_i,a_{i+1},...,a_n \)除起始元素没有\(a_1\)... 阅读全文
posted @ 2017-04-17 21:10 I呆呆 阅读(1055) 评论(0) 推荐(1)