- 博客(9)
- 资源 (48)
- 收藏
- 关注
原创 Hashing
Hash函数的性质: 一致性:具有相同关键字的值被赋给同一个桶中。 随机性:每个桶将会有相同数据的记录,而不考虑文件中关键字的真实分布。 最坏性:把所有的关键字映射到同一个桶中,使得访问时间和文件中关键字的数量成正比。 Static Hashing: 如果没有空间剩余,将会分配overflow buckets, 用链表把它们连接起来。(长的链表降低了性能) Deficiency: 一:如果初始桶的数量很少,随着文件的增长,性能将会因为太多的overflow buckets下降。 二:如
2010-08-26 11:22:00 10347 2
原创 深入浅出设计模式第一章笔记
一:找出应用中可能需要变化之处,把它们独立出来, 不要和那些不需要变化的代码混在一起。把会变化的部分取出并「封装」起来,好让其他部分不会受到影响。 二:针对接口编程,而不是针对实现编程。由行为类实现行为接口。 假设有一个抽象类Animal,有两个具体的实现(Dog与Cat)继承自Animal。「针对实现编程」,作法如下: Dog d = new Dog(); d.bark(); 但是「针对接口/超类型编程」,作法会如同下面: Animal animal = ne
2010-08-20 11:12:00 1371
原创 C#接口
抽象类往往是一系列派生类的基类,而接口的作用是将协定混入其它继承树。 接口定义语法如下: [性质][访问修饰符] interface 接口名 [:基列表] { 接口主体 } interface IStorable { void Read(); void Write(object); } 接口的目的是定义类中该有的功能。接口中没有访问修饰符,隐含就是public,事实上,如果有的话
2010-08-20 10:19:00 449
原创 override与overload
虚函数就是允许被其子类重新定义的成员函数。而子类重新定义父类虚函数的做法,成为“覆盖”(override),或者称为“重写”。 覆盖是指子类重新定义父类的虚函数的做法。 重载(overload):指允许存在多个同名函数,而这些函数的参数表不同
2010-08-17 20:52:00 497
原创 面向对象
静态成员变量必须要赋初值。如: int Cat::HowManyCats = 0。 如果把静态成员数据设置为私有,则必须通过公有静态成员函数访问才行。 在静态成员函数访问非静态成员变量时,应该通过传递这个类的对象作为参数来访问。 在构造函数的初始化列表中,初始化变量的顺序是根据成员变量的声明顺序来执行的。 const常量必须在构造函数的初始化列表里面初始化或者将其设置成static,直接初始化。 //////////////////////////
2010-08-17 18:53:00 470
转载 class和struct做类型定义时的区别
<br />从语法上,class和struct做类型定义时只有两点区别: <br />(一)默认继承权限。如果不明确指定,来自class的继承按照private继承处理,来自struct的继承按照public继承处理; <br />(二)成员的默认访问权限。class的成员默认是private权限,struct默认是public权限。 <br />除了这两点,class和struct基本就是一个东西。语法上没有任何其它区别。 <br /><br />不能因为学过C就总觉得连C++中struct和class都
2010-08-17 16:46:00 587
原创 拷贝(复制)构造函数和赋值函数
只有单个形参,而且该形参是对本类类型对象的引用(常用const修饰),这样的构造函数称为拷贝(复制)构造函数。主要用于: 1 根据另一个同类型的对象显式或隐式初始化一个对象。 2 复制一个对象,将它作为实参传给一个函数。 3 从函数返回时复制一个对象 4 初始化顺序容器中的元素 5 根据元素初始化列表初始化数组元素 有些类需要完全禁止复制。例如,iostream类就不允许复制。这个时候,类必须显式声明其复制构造函数为pr
2010-08-17 16:24:00 544
原创 C++中的显式转换
<br /> 显式转换也成为强制转换(cast), 有如下几种类型:static_cast, dynamic_cast, const_cast, reinterpret_cast。<br /> 1. const_cast: 将转换掉表达式的const性质。<br /> const char *pc_str;<br /> char *pc = string_copy( const_cast<char*>(pc_str) );<br /><br /><br /> 2.
2010-08-17 11:00:00 697
转载 一根木棍随机折成三段,能组成三角形的概率多大?
<br />设线段(0,a)任意折成三段长分别为x,y,a-x-y,显然有x>0,y>0,a-x-y>0,满足这三个约束条件的(x,y)在平面直角坐标系中的可行域为一个直角三角形,其面积为:(1/2)a^2. <br />三段长能构成三角形的条件是:任意两边之和大于第三边,也就是: <br />x+y>a-x-y,a-x-y+x>y,a-x-y+y>x同时成立 <br />即 x+y>a/2,y<a/2,x<a/2同时成立 <br />满足x+y>a/2,y<a/2,x<a/2同时成立的(x,y)在
2010-08-06 21:02:00 19749
TCP/IP详解,卷1:协议
2011-09-03
LCA RMQ 最小公共祖先 区间最小值
2010-08-07
组合数学 Richard A.Brualdi 中文版 机械工业出版社(Part2,共2部分))
2010-07-11
组合数学 Richard A.Brualdi 中文版 机械工业出版社(Part1,共2部分))
2010-07-11
Fat Fat16 Fat32 文件系统
2010-01-27
InstallShield 6_3实践与提高
2010-01-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人