摘要: IP 提供一种不可靠、无连接的数据报传送服务。 不可靠指是它不能保证 IP 数据报能成功地到达目的地。 无连接这个术语的意思是I P并不维护任何关于后续数据报的状态信息。每个数据报的处理是相互独立的。IP 路由选择 从概念上说, IP 路由选择是简单的,特别对于主机来说。如果目的主机与源主机直接相连(如点对点链路)或都在一个共享网络上(以太网或令牌环网),那么I P数据报就直接送到目的主机上。否则,主机把数据报发往一默认的路由器上,由路由器来转发该数据报。大多数的主机都是采用这种简单机制。 阅读全文
posted @ 2011-03-29 21:24 dylan_zb 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 共用函数 privatevoidSwap(int&left,int&right){inttemp;temp=left;left=right;right=temp;}基本冒泡排序 基本冒泡排序的最好、最坏、平均情况下的时间复杂度都为O(n^2)。故算法的平均时间复杂度也为O(n^2)。算法如下:///<summary>///冒泡排序的过程很简单,首先将第一个记录的关键字与第///二个记录的关键字进行比较,若按升序排序,则当第一个记录的///关键字大于第二个记录的关键字时,将两个记录交换。然后再比///较第二个记录和第三个记录的关键字。依次类推,直至第n-1个///记录 阅读全文
posted @ 2011-03-29 20:05 dylan_zb 阅读(654) 评论(1) 推荐(0) 编辑
摘要: 一种简单的实现方法:O(m*n) 其中m为主串的长度,而n为字串的长度// 返回字串t在主串s中第pos个字符之后的位置,若不存在,则返回-1// 其中,t非空,1 <= pos <= s.size()int Index(const char *s,const char *t, int pos){ i = pos; j = 1; while (s[i+j] != '\0' && t[j] != '\0'){ if (s[i+j] == t[j]){ j++; } else { i++; j = 0; } } if (t[j] == & 阅读全文
posted @ 2011-03-29 19:29 dylan_zb 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 内连接:把两个表中数据对应的记录查出来 外连接:以某个表为基础把对应记录查出来左连接:左表中所有记录,右表中对应记录右连接:右表中所有记录,左表中对应记录 全连接:左右表中所有记录都会选出来 阅读全文
posted @ 2011-03-29 18:54 dylan_zb 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 第一种方法:递归版本:Error_Code binary_search(const Ordered_list &the_list, const Key &target, int bottom, int top, int &position){ Key data; if (bottom < top){ int mid = bottom + (top - bottom)/2; //注意点 the_list.retrieve(mid, data); if (data < target) return binary_search(the_list, target, 阅读全文
posted @ 2011-03-29 18:38 dylan_zb 阅读(199) 评论(0) 推荐(0) 编辑
摘要: C中的struct只能是一些变量的集合体,可以封装数据却不可以隐藏数据,而且成员不可以是函数。C++的struct可以当作class来用,他和C++中class的唯一的区别是,class中的成员默认是private,而struct的成员默认为public。 阅读全文
posted @ 2011-03-29 17:57 dylan_zb 阅读(397) 评论(0) 推荐(0) 编辑
摘要: C++:C++中二者最大的区别 就是:struct 的成员 默认是 public, 而 class 的成员默认是 private。其他基本上是等同的。在C#中:1、结构是值类型:值类型在堆栈上分配地址,类是引用类型:引用类型在堆上分配地址。2、结构:不能从另外一个结构或者类继承,本身也不能被继承;类:完全可扩展的,除非显示的声明sealed 否则类可以继承其他类和接口,自身也能被继承。3、结构: 没有默认的构造函数,但是可以添加构造函数,没有析构函数。类: 有默认的构造函数,有析构函数。 阅读全文
posted @ 2011-03-29 17:40 dylan_zb 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 一个由c/C++编译的程序占用的内存分为以下几个部分:1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap)— 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静态区)(static)—全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 - 程序结束后有系统释放4、文字常量区 —常量字符串就是放在这里的。 程序结束后由系统释放5、程序代 阅读全文
posted @ 2011-03-29 17:32 dylan_zb 阅读(182) 评论(0) 推荐(0) 编辑