码迷,mamicode.com
首页 >  
搜索关键字:队列 c++ 链表    ( 36209个结果
【数据结构】栈和队列
没什么多说的。栈:后进先出,LIFO队列:先进先出, FIFO讲了递归时用到栈,和栈的顺序表示。队列讲了链式表示和循环队列(顺序表示)。实际上都可以用链式和顺序表示,看情况选吧。里面的例题都还挺不错的,自己做了一遍,都是按照书上的结构来的,现在才知道C++STL里都实现了这些功能了,直接调用就成.....
分类:其他好文   时间:2014-05-16 06:18:38    阅读次数:215
【数据结构】线性表
这一章虽然长,但因为我不太重视里面繁琐的计算过程所以也没有多少新东西。线性表中每个元素的类型是相同的。表示的方法有顺序映像的顺序表,实际上就是个一维数组,书上用了变长的存储方式;链式表示有线性链表,就是一个结点指向下一个结点,还有静态链表,就是用数组来实现链表,数组内要存储一个元素的位置。又讲了循环...
分类:其他好文   时间:2014-05-16 06:09:47    阅读次数:270
LeetCode OJ - Sort List
题目: Sort a linked list inO(nlogn) time using constant space complexity.解题思路: 复杂度为O(n* logn) 的排序算法有:快速排序、堆排序、归并排序。对于链表这种数据结构,使用归并排序比较靠谱。递归代码如下:代码: /...
分类:其他好文   时间:2014-05-16 05:49:04    阅读次数:266
LeetCode---Remove Nth Node From End of List
题目链接题意: 给出单链表头指针head和整数n, 要求删除链表的倒数第n个结点, 这里n保证是合法的输入.我的思路....其实我没大明白题目建议的one pass是什么意思, 可能就是遍历一遍链表的, 不过我还是秉着能A掉就万岁的心态...我还是首先记录了链表的长度, 然后删除第len - n +...
分类:其他好文   时间:2014-05-16 05:45:56    阅读次数:348
使用lock和condition实现的阻塞队列-字符串
在jdk 的API中提供了一个字符串的阻塞队列 :class BoundedBuffer { final Lock lock = new ReentrantLock(); final Condition notFull = lock.newCondition(); final Con...
分类:其他好文   时间:2014-05-16 05:11:43    阅读次数:323
Leetcode 线性表 Remove Duplicates from Sorted List
题意:去掉已排序的链表里重复的元素 思路: 1.遍历链表,用一个变量保存当前链表节点的值 2.如果当前链表节点值与前面的一样,则删除当前链表节点 3.否则用当前节点值更新该变量 复杂度:时间O(n), 空间O(1)...
分类:其他好文   时间:2014-05-15 06:46:24    阅读次数:218
【剑指offer】递归循环两种方式反转链表
本文分别用非递归和递归两种方式实现了链表的反转,在九度OJ上测试了非递归版本,AC。 题目描述: 输入一个链表,反转链表后,输出链表的所有元素。 (hint : 请务必使用链表) 输入: 输入可能包含多个测试样例,输入以EOF结束。 对于每个测试案例,输入的第一行为一个整数n(0<=n<=1000):代表将要输入的链表的个数。 输入的第二行包含n个整数t(0<=t<=1000000):代表链表元素。 输出: 对应每个测试案例, 以此输出链表反转后的元素,如没有元素则输出NULL。 样例输入:...
分类:其他好文   时间:2014-05-15 06:41:12    阅读次数:315
【剑指offer】合并两有序单链表
九度OJ上AC,采用归并的思想递归实现。 题目描述: 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 (hint: 请务必使用链表。) 输入: 输入可能包含多个测试样例,输入以EOF结束。 对于每个测试案例,输入的第一行为两个整数n和m(0<=n<=1000, 0<=m<=1000):n代表将要输入的第一个链表的元素的个数,m代表将要输入的第二个链表的元素的个数。 下面一行包括n个数t(1<=t<=1000000):代表链表一中的元素。接下来一行包含m个元素,s...
分类:其他好文   时间:2014-05-15 03:18:31    阅读次数:356
LeetCode Sort List
在 O(nlogn)的时间内对一个链表进行排序。。明显是要用归并或者快排 第一次知道说原来归并也可以用链表来写,被刷了下三观。。。。。用快慢指针的方法找分界点。 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNod...
分类:其他好文   时间:2014-05-14 15:03:49    阅读次数:230
伙伴系统
Linux的伙伴算法把所有的空闲页面分为10个块组,每组中块的大小是2的幂次方个页面,例如,第0组中块的大小都为20(1个页面),第1组中块的大小为都为21(2个页面),第9组中块的大小都为29(512个页面)。也就是说,每一组中块的大小是相同的,且这同样大小的块形成一个链表。我们通过一个简单的例子...
分类:其他好文   时间:2014-05-14 11:22:07    阅读次数:247
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!