简介
List是一种可在常数时间内在任何位置执行插入和删除操作的顺序容器。list是双向链表,其迭代器是双向的。与其他顺序容器(array, vector, deque)相比,list容器在任意位置执行插入、提取、和移动元素的操作更高效,但它不能通过在容器中的位置直接获取元素。
成员函数
复制控制
list::list()
...
分类:
编程语言 时间:
2014-05-22 11:44:49
阅读次数:
433
完全按照海涛哥剑指offer里边的递归思路来写的,基本一样,仅作学习验证,努力锻炼,努力学习!code如下:
//Change a BSTree to a sorted double linklist
struct BSTreeNode
{
int value;
BSTreeNode *left;
BSTreeNode *right;
}head;
//Create a node of...
分类:
其他好文 时间:
2014-05-22 10:23:27
阅读次数:
237
Binary search tree to sorted double linked list.
分类:
其他好文 时间:
2014-05-22 05:30:47
阅读次数:
207
PHP中经常使用数组,PHP的数组强大,而且速度也快,读写都可以在O(1)内完成,因为它每个元素的大小都是一致的,只要知道下标,便可以瞬间计算出其对应的元素在内存中的位置,从而直接取出或者写入。那么内核中数组是如何实现的呢?
PHP大部分功能,都是通过HashTable来实现,其中就包括数组。
HashTable即具有双向链表的优点,同时具有能与数据匹敌的操作性能。...
分类:
Web程序 时间:
2014-05-20 16:10:21
阅读次数:
368
出题:把二元查找树转变成排序的双向链表。输入一棵二元查找树,要求将该二元查找树按照中序转换成一个排序的双向链表,要求不能创建任何新的节点,只能调整指针的指向;分析:递归的思路,当前节点需要进行的处理,并使用递归调用和返回值将子问题链接起来;首先明白二元查找树的特性,变成有序双向链表后当前根节点的左节...
分类:
其他好文 时间:
2014-05-19 10:02:49
阅读次数:
381
双向(循环)链表是线性表的链式存储结构的又一种形式。
在之前已经讲述了单向链表和循环链表。相比于单向链表只能从头结点出发遍历整个链表的局限性,循环链表使得可以从任意一个结点遍历整个链表。
但是,不管单向链表也好,循环链表也罢,都只能从一个方向遍历链表,即只能查找结点的下一个结点(后继结点),而不能查找结点的上一个结点(前驱结点)。鉴于上述问题,引入了双向链表。由于双向循环链表包含双向链表的所有...
分类:
其他好文 时间:
2014-05-18 18:43:19
阅读次数:
341
linux中的经典宏定义 offsetof
定义:offsetof在linux内核的include/linux/stddef.h中定义。 #define offsetof(TYPE, MEMBER)
((size_t) &((TYPE *)0)->MEMBER)说明:获得结构体(TYPE)的变量成员...
分类:
系统相关 时间:
2014-05-18 01:30:21
阅读次数:
515
写一个string双向链表模块,具有提取和插入功能。通过建立一个程序语言种类的表来练习这个模块。为这个表提供一个sort()函数。并提供一个函数反转表中字符串的顺序。环境:vs2005
win32控制台程序#include #include #include #include // for std....
分类:
其他好文 时间:
2014-05-15 10:45:47
阅读次数:
342
init.rc文件解析过程我们已经知道init.rc的结构,应该可以想到解析init.rc的过程就是识别一个个section的过程,将各个section的信息保存下来,然后在init.c的main()中去执行一个个命令。
android采用双向链表(关于双向链表详解见本文第三部分)来存储sectio...
分类:
移动开发 时间:
2014-05-13 17:45:01
阅读次数:
462
要求:输入一棵二叉排序树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建新的结点,只能调整树中结点的指针的指向。方法一:我们借助一个容器来顺序存储结点的指针,然后改变指针的指向。方法二:我们边遍历边改变指针的指向。
分类:
其他好文 时间:
2014-05-08 08:59:21
阅读次数:
349