- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 快速排序
快速排序算法的基本思想是,通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。一趟快速排序的算法是:附设两个指针low和high,它们的初值分别为low和high,设枢轴记录的关键字为pi
2011-07-21 16:30:21 258
原创 堆排序
所谓堆和堆排序分类: ACM堆,是一棵完全二叉树,根的值大于左右子树中所有结点的值,左右子树也是堆,除此之外,对其它元素之间的大小关系(如左右子树之间元素大小关系)没有要求。 这是大根堆,如果把“大于”换成“小于”,就是小根堆,这里都以大根堆为例。 由于堆是完全二叉树,所以可以用
2011-07-19 22:19:15 273
原创 Effective C++ -Part I
1.视C++为一个语言联邦 C++搞笑编程守则视情况而变化,取决于使用的C++的哪一部分。2.尽量使用const,enum,inline替换#define 对于单纯常量,最好以const对象或enum替换#define 对于形似函数的宏,最好使用inline函数来替换#de
2011-07-18 22:34:25 195
原创 linux的大小端、网络字节序问题
1、80X86使用小端法,网络字节序使用大端法。 2、二进制的网络编程中,传送数据,最好以unsigned char, unsigned short, unsigned int 来处理, unsigned short ,unsig
2011-07-04 14:00:40 761
原创 NAPI 技术
NAPI 是 Linux 上采用的一种提高网络处理效率的技术,它的核心概念就是不采用中断的方式读取数据,而代之以首先采用中断唤醒数据接收的服务程序,然后 POLL 的方法来轮询数据,(类似于底半(bottom-half)处理模式);NAPI 技术适用于对高速率的短长度数据包的处理,但是 NAPI 的使用至少要得到下面的保证:A. 要使用 DMA 的环形输入队列(也就是 ring_dma,这
2011-06-24 16:22:00 464
原创 RCU 原理( kernel 2.6 )
RCU(Read-Copy Update),顾名思义就是读-拷贝修改,它是基于其原理命名的。对于被RCU保护的共享数据结构,读者不需要获得任何锁就可以访问它,但写者在访问它 时首先拷贝一个副本,然后对副本进行修改,最后使用一个回调(callback)机制在适当的时机把指向原来数据的指针重新指向新的被修改的数据。这个时 机就是所有引用该数据的CPU都退出对共享数据的操作。因此RCU实际上是一
2011-06-24 15:26:00 444
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人