`
evasiu
  • 浏览: 165527 次
  • 性别: Icon_minigender_2
  • 来自: 广州
博客专栏
Fa47b089-e026-399c-b770-017349f619d5
TCP/IP详解卷一>阅读...
浏览量:12264
社区版块
存档分类
最新评论
文章列表
这一章叙述了实现过程中应该考虑的一些问题,例如,太快定义变量可能造成效率上的拖延;过度使用转型可能导致代码变慢又难维护,又招来微妙难解的错误;返回对象“对象内部数据之handle”可能会封装并留给用户虚吊handle ...
本章对良好C++接口的设计与声明提出了一些建议,提供了错误接口可能带来的后患的一些例子。总的来说,良好的设计就是“让接口容易被使用,不容易被误用”。   Item 18: 让接口容易被使用,不容易被误用要做到这一点,首 ...
所谓资源就是,一旦用了它,将来必须还给系统。最常见的资源是动态分配内存,另外常见的资源还有:文件描述器、互斥锁、图形界面中的字形和笔刷、数据库连接、以及网络socket.   Item 13: 以对象管理资源该条款背后的思想 ...
第二章的内容比较简单,基本没有太多深意,从其标题就能想到其内容的那种,所以就只稍微做一下总结吧。   Item 5: 了解C++默认编写并调用哪些函数编译器暗自为class创建的函数(如果用户没有自己声明)包括:default构造函 ...
这段时间看了一遍<Effective C++>,从中了解了很多C++特性,以及少量设计模式的基础知识,增加了我阅读C++对象模型及设计模式这两本书的欲望,这确实是一本关于C++的非常好的书。不过正如云风所讲,“总觉得书里讲的太细 ...
年前实现了一个2-3树,后来就玩儿去了,再后来看书去了,所以就耽搁了。基本上网上找不到什么2-3树的实现,大概是因为这东西基本真正被用过吧。基于它的思想而发明的B树,B+树才是真正的大头,不过2-3树的模型比较简单, ...
在《基于树的索引结构介绍》(http://philoscience.iteye.com/admin/blogs/1112759)中提到了二分查找树及其改进版本AVL树(平衡二叉树)。二分查找树比较简单,但是很容易产生不平衡的问题而丧失了二分查找树的优势,AVL树规定了左右孩子树的高度差超过1则为不平衡,为了维持平衡,在插入和删除子节点后,必须进行相应的旋转。还有一种著名的红黑树,红黑树放宽了平衡的要求,从而减少了操作的次数。最后还有伸展树(splay tree,好像也有叫自组织树的),它与我们前面介绍过的自组织链表中的moveToFront策略是一样的,不过用的数据结构不再是链表,而是二叉树。这 ...
查找是我们现实生活中经常需要做的事情。例如用字典查一个英文单词的释意,首先我们会定位到这个单词所在的页,然后再看与该单词关联的解释。这个过程中,单词是key,而单词+单词的释意则是一个record。信息的组织方式很 ...
堆是这样一种数据结构,它首先是一棵二叉树,而且还是一棵完全二叉树;其次,对于最小堆,父节点的值小于子节点。 有两种特殊要求的二叉树,一种是完全二叉树,一种是满二叉树。完全二叉树添加叶子节点的时候,要求从左到右添加,所以如果左子树没有被填满,就不会把叶子结点添加到右子树上。满二叉树则要求一个节点要么有两个孩子,要么就没有孩子。他们的形状如下:   完全二叉树的性质使我们可以使用一个数组来表达一棵完全二叉树,因为叶子结点加入到树的位置是固定的,所以我们可以通过下标找到他的父节点或子节点(如果有的话)。令根的下标为1,则对于节点i,其父结点下标为i/2,孩子节点下标分别为i*2和i*2+1. ...
《编程珠玑》主要提到的排序方法是快排,并通过对基本算法思想的微调,以提高效率及保证最坏情况下的性能。我又回过头去看了Clifford A. Shaffer的《数据结构与算法分析》,总结了几种内排序(internal sorting)算法。(所谓的内排 ...
又开始看《编程珠玑》,发现之前看的也许不是很认真吧,再看一遍的时候竟没有什么似曾相识的感觉。于是便开始做后面的习题了,也许这样能让我对这一章的内容印象更深刻些。 第三章介绍了几个案例,说明了数据的组织是如何影响程序的结构的,说到底,就是要设计好的数据结构,以减少编程的量。这一章的内容相对简单,我做了后面两道题:3.7的第1题和第4题,贴在这里了: 第一题: double getTax( int income ){ //用这两个数组来代替程序员的25条if语句 int base[25] = { 0, 2200, 2700, 3200, 3700, ..., 102200}; do ...
最后终于来到了大块头TCP协议,为了给应用层提供可靠的传输服务,tcp协议设计了各种机制以实现丢包、重发、乱序、链路传输错误等传输过程中可能出现的错误。   1. TCP协议概述 我们首先来看一下TCP协议的首部,它将给收 ...
这一次将总结IP层的分用中的UDP与IGMP。UDP是一个简单的面向数据报的运输层协议,它提供不可靠服务:它把应用程序的数据加上UDP头部之后就传递给IP层发送出去,但是并不能保证它们能到达目的地。应用程序必须关心IP数据报的长度,如果它超过网络的MTU,那么就要对IP数据报进行分片。如果需要,源端到目的端之间的每个网络都要进行分片,并不只是发送端主机连接第一个网络才这样做。IGMP是一种支持主机和路由器进行多播的Internet组管理协议。广播和多播只能应用于UDP,所以我在这里把UDP和IGMP放在一起总结了,书中也是这样的顺序,呵呵。   1. UDP:用户数据报协议 下图是UDP首 ...
这一次将从ip首部中的“协议”字段的分用说开来。前面的图中我们可以看到,所有的TCP、UDP、ICMP及IGMP数据都以ip数据报格式传输。TCP段、UDP数据报文将交付到上一层即应用层,而ICMP及IGMP报文则由tcp/ip协议模块处理,不会支付 ...
这段日子看了《Tcp/ip详解》的卷一, 这本书最大的特点在于通过使用tcpdump程序捕获各种网络包,从而让我们确切的了解网络各个层中的协议以及算法。下图是这本书中讲讨论到的协议以及其所在的层次。 1. tcp/ip协议网络层次结 ...
Global site tag (gtag.js) - Google Analytics