PCI-X 和PCIe 总线规范要求其设备必须支持Capabilities 结构。在PCI 总线的基本配置空间中,包含一个Capabilities Pointer 寄存器,该寄存器存放Capabilities 结构链表的头指针。在一个PCIe 设备中,可能含有多个Capability 结构,这些寄存...
分类:
其他好文 时间:
2014-08-08 21:14:16
阅读次数:
450
STL中的list容器的一点总结
1.关于list容器
list是一种序列式容器。list容器完成的功能实际上和数据结构中的双向链表是极其相似的,list中的数据元素是通过链表指针串连成逻辑意义上的线性表,也就是list也具有链表的主要优点,即:在链表的任一位置进行元素的插入、删除操作都是快速的。list的实现大概是这样的:list的每个节点有三个域:前驱元素指针域、数据域和后继元素指...
分类:
其他好文 时间:
2014-08-07 19:00:30
阅读次数:
250
/* * 循环队列基本操作。 * 少用一个元素空间,约定以“队列头指针在队列尾指针的下一个位置”作为队列满的标志。 * “队列头指针等于队列尾指针”作为队列空的标志。 */#include #include #include #define MAXQSIZE 100typedef char Elem...
分类:
其他好文 时间:
2014-08-07 12:58:20
阅读次数:
288
本文主要分析gcc4.8版本的stl list的源码实现,与vector的线性空间结构不同,list的节点是任意分散的,节点之间通过指针连接,好处是在任何位置插入删除元素都只需要常数时间,缺点是不能随机访问,查询复杂度是O(n),n为list中的元素个数。所以list非常适合应用与数据插入删除频繁的...
分类:
其他好文 时间:
2014-08-07 00:27:17
阅读次数:
358
二分查找又称折半查找,它是一种效率较高的查找方法。 【二分查找要求】:1.必须采用顺序存储结构 2.必须按关键字大小有序排列。 【优缺点】折半查找法的优点是比较次数少,查找速度快,平均性能好; 其缺点是要求待查表为有序表,且插入删除困难。 因此,折半查找方法适用于 不经常...
分类:
其他好文 时间:
2014-08-05 22:08:50
阅读次数:
299
一、概念:二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子...
分类:
Web程序 时间:
2014-08-04 21:31:58
阅读次数:
300
题目:存在一个单链表,头指针为head,实现单链表的反转Node *Reverse(Node *head)。
该算法的求解办法有很多,如:
方法1:先顺序变量单链表,将结点保存到栈中,在从栈中弹出结点,重新建立一个新的单链表;
方法2:用《剑指offer》里面给出的算法,用三个指针来实现;
方法3:采用递归实现,是方法2的递归实现形式。
本文主要给出方法2和方法3,在给出具体的代码之前,先要注意几个问题:
...
分类:
其他好文 时间:
2014-08-04 18:01:57
阅读次数:
200
创建单线性链表,常见的有头插法、尾插法创建线性链表,常见的操作有:创建链表、查找、删除、增加元素、求逆链等操作。
这里首先才有头插法创建链表:
//头指针唯一确定一个单链表
#define MaxSize 15
typedef int elem_type ;
typedef struct linklist
{
elem_type data;
str...
分类:
其他好文 时间:
2014-08-04 17:51:41
阅读次数:
219
题目:已知有两个有序的单链表,其头指针分别为head1和head2,实现将这两个链表合并的函数:
Node* ListMerge(Node *head1,Node *head2)
这个算法很像我们排序算法中的归并排序,只能说“很像”,因为思想是一样的,但是这个与归并排序还是有区别的,区别如下:
1.归并排序是针对有序数组,而这里是有序链表;
2.归并排序排序的时间复杂度为o(nlogn),而这里的时间复杂度最坏情况下为O(m+n),最好的情况下为...
分类:
其他好文 时间:
2014-08-04 17:43:47
阅读次数:
296
AVL树是最先发明的自平衡二叉查找树。在AVL树中任何节点的两个子树的高度最大差别为一,所以它也被称为高度平衡树。查找、插入和删除在平均和最坏情况下都是O(logn)。增加和删除可能需要通过一次或多次树旋转来重新平衡这个树。AVL树得名于它的发明者G.M. Adelson-Velsky和E.M. L...
分类:
其他好文 时间:
2014-08-03 23:03:06
阅读次数:
273