码迷,mamicode.com
首页 >  
搜索关键字:c++ 双向链表    ( 1483个结果
大平神出的一道双向链表题
Problem Description有一个包含n个数字的序列,刚开始时它的第i个数字为i。光标刚开始指向第一个数字(1),现在我们有如下几种操作:1 -光标左移(保证左边有数字)。2 -光标右移(保证右边有数字)。3 x -在光标前面加入一个数字。4 x -在光标后面加入一个数字。5 -删除光标前...
分类:其他好文   时间:2014-11-07 00:51:25    阅读次数:233
双端队列篇deque SDUT OJ 双向队列
双向队列Time Limit: 1000MS Memory limit: 65536K题目描述 想想双向链表……双向队列的定义差不多,也就是说一个队列的队尾同时也是队首;两头都可以做出队,入队的操作。现在给你一系列的操作,请输出最后队列的状态;命令格式:LINXX表示一个整数,命令代表左边进队操.....
分类:其他好文   时间:2014-11-06 21:44:58    阅读次数:182
LinkedHashMap源码阅读
LinkedHashMap继承自HashMap,相关基本操作性能略低于HashMap,由于需要额外代价维护链表。其遍历操作是通过操作该双向链表实现,而非内部散列表数组,因此性能为O(size)比HashMapO(capacity)更高。 支持两种顺序遍历:元素插入顺序(重复put不算)和最近使用优先顺序(调用put和get类似LRU),默认是按照元素插入顺序遍历。通过构造函数传入true可以实现最近使用优先遍历,每次put或get操作时,将该元素直接重新放置到链表头结点后面来实现最近使用优先遍历。 Link...
分类:其他好文   时间:2014-11-06 20:06:39    阅读次数:205
LinkedList源码阅读
LinkedList实现了List和Deque接口,其中Deque是一个双端队列,可以在头部和尾部两端添加和删除元素,因此LinkedList既可以当作先进先出的队列,也可以当作后进先出的栈。 LinkedList采用双向链表方式实现,因此插入、删除元素效率比较高,但不支持随机访问。 多线程环境下LinkedList不能保证线程安全,因此对其结构修改的操作应当程序员来保证线程安全,其迭代器支持fail-fast,迭代过程中试图发现是否发生修改,若修改了容器则抛出ConcurrentModificationE...
分类:其他好文   时间:2014-11-04 21:14:20    阅读次数:338
双向循环链表(C++实现,兼具Boost单元测试)
本文双链表介绍部分参考自博文数组、单链表和双链表介绍 以及 双向链表的C/C++/Java实现。 1 双链表介绍 双向链表(双链表)是链表的一种。和单链表一样,双链表也是由节点组成,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便...
分类:编程语言   时间:2014-11-02 19:38:56    阅读次数:441
【指针】基于双向链表的list
Description:请实现以下基于双向链表的list类enum Error_code{ success, underflow, overflow};template struct Node{ List_entry entry; Node *next; Node *back;};template ...
分类:其他好文   时间:2014-11-01 21:44:19    阅读次数:442
第十八天:双向链表与内核链表
对于双向链表就是在单向链表的基础上加了一个向前的结构体指针。对于一些操作的思想更加的简单。麻烦的事情就是要判断的内容更多了。因为内核链表中运用到的都是双向链表。所以要学习内核链表。就先要会对双向链表进行基本的操作。比如新增和显示。 内核链表中的实现思想类似与面向对象的思想,成员和方法分开写...
分类:其他好文   时间:2014-10-30 20:46:48    阅读次数:267
省常中模拟 day1
第一题:题目大意:给出N个数的数列,如果相邻的两个数加起来是偶数,那么就可以把这两个数消掉,求最多能消掉多少数。解题过程:1.先自己手工模拟了几组数据,发现不管消除的顺序如何,最终剩下的是一定的。所以就可以每次任意找两个奇偶性相同的消掉。于是就想到可以用双向链表来模拟。2.更好的方法:直接用一个栈来...
分类:其他好文   时间:2014-10-27 21:08:55    阅读次数:177
二叉搜索树与双向链表 【第一题】
题目要求:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。解决思路: 1. 根据观察可知,双向链表顺序即为二叉树的中序遍历结果----->采用中序遍历+递归; 2. 中序遍历顺序为:左+中+右,传入一个变量pre。 pre可...
分类:其他好文   时间:2014-10-26 18:16:35    阅读次数:210
二元查找树转化成排序的双向链表——要求不创建新的节点
码完第一次编译执行竟然就成功了。。。高兴~问题描写叙述:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建不论什么新的结点,仅仅调整指针的指向。比如: 10 / \ 6 14 / \ / \ 4 8 12 16转换成双向链表4=6=8=10=12=14=...
分类:编程语言   时间:2014-10-26 12:56:10    阅读次数:161
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!