Problem:
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first
two lists.
Solution:
两个有序链表,每次取头部最小的那个元素,然后将这个元素从原来链表...
分类:
编程语言 时间:
2015-05-10 19:03:44
阅读次数:
119
Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST.
基本思路:
中序遍历的过程,与有序链表的顺序是一一对应的。
采用中序遍历构造进树的构造。
并利用取值范围,确定,根的位置,以及子树的范围。
故需要遍历整个链表,求...
分类:
其他好文 时间:
2015-05-09 11:43:53
阅读次数:
140
题目:
Merge k sorted
linked lists and return it as one sorted list. Analyze and describe its complexity.
翻译:
把K个有序的链表合成一个,返回。
思路:
这道题和昨天的Merge 2 Lists有些类似。但是k不确定,如果用每个都去遍历的话,肯定是不会通过的。
So、可以想到的是归...
分类:
其他好文 时间:
2015-05-06 13:22:15
阅读次数:
153
无锁有序链表可以保证元素的唯一性,使其可用于哈希表的桶,甚至直接作为一个效率不那么高的map。普通链表的无锁实现相对简单点,因为插入元素可以在表头插,而有序链表的插入则是任意位置。
本文主要基于论文High Performance Dynamic Lock-Free Hash Tables实现。
主要问题
链表的主要操作包含insert和remove,先简单实现一个版本,就会看到问题所在,以...
分类:
其他好文 时间:
2015-05-05 21:59:41
阅读次数:
195
题目:
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together
the nodes of the first two lists.
翻译:
把2个有序链表连接,返回一个新链表
思路:
很简单,就是遍历每个节点,小的话添加在...
分类:
其他好文 时间:
2015-05-05 12:43:02
阅读次数:
126
1. 链表 Remove Duplicates from Sorted ListGiven a sorted linked list, delete all duplicates such that each element appear only once.For example,
Given 1->1->2, return 1->2.
Given 1->1->2->3->3, return...
分类:
编程语言 时间:
2015-04-24 19:19:20
阅读次数:
118
题目链接:Convert Sorted List to
Binary Search Tree
Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST.
这道题的要求是将有序链表转化成高度平衡的二叉搜索树(BST)。
1. 利...
分类:
其他好文 时间:
2015-04-17 18:16:32
阅读次数:
165
1.两个链表都带有头结点Node* Merge(Node* head1, Node* head2){ if(head1==NULL || head1->next==NULL) return head2; if(head2==NULL || head2->next==NULL) ret...
分类:
其他好文 时间:
2015-04-16 06:44:16
阅读次数:
110
1、理想情况在一个使用有序链表描述的具有n个元素的字典中进行搜索,至多需要n次比较。如果在链中部节点加一个指针,则比较次数可以减少到n/2+1。搜索时,首先将要搜索的元素与中间节点进行比较,如果该元素较小,则仅需搜索链表的左半部分。否则,只需搜索又半部分。以上图为例,如果要搜索的数为26,则将26先...
分类:
其他好文 时间:
2015-04-13 00:11:02
阅读次数:
311
合并有序链表,链表结构已给出。要求返回的链表由原链表的节点构成,不再重新创建节点。【思路】数据结构入门算法。分别为两个链表设“滑块”,比较当前滑块数值的大小,小的就将返回链表的末尾指针指向它。注意:1.要为返回链表设立总是指向其尾部节点的标志,方便归入新节点。2.考虑原始链表为空的情况。【my co...
分类:
其他好文 时间:
2015-04-10 11:01:45
阅读次数:
177