usingnamespacestd;structListNode{intm_Data;ListNode*m_pNext;ListNode(intvalue,ListNode*next=NULL):m_Data(value),m_pNext(next){}};/*两个链表比如链表1:1->3->5->...
分类:
其他好文 时间:
2015-08-20 01:02:06
阅读次数:
205
Merge Two Sorted Lists
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.
合并两个有序链表
...
分类:
其他好文 时间:
2015-08-14 13:48:23
阅读次数:
86
Swift提供了两种集合类型来存放多个值——数组(Array)和字典(Dictionary)。数组把相同类型的值存放在一个有序链表里。字典把相同类型的值存放在一个无序集合里,这些值可以通过唯一标识符(也就是键)来引用和查找。在Swift里,数组和字典里所能存放的值的类型是明确的。这意味着你不能误把一...
分类:
编程语言 时间:
2015-08-11 20:53:29
阅读次数:
128
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.
解题思路:
题意为构造有序链表的二分查找树。找到中间节点的办法用双指针法。注意我们...
分类:
其他好文 时间:
2015-08-11 18:51:47
阅读次数:
136
1.Bloom Filter
由一个很长的二进制向量和一系列hash函数组成
优点:可以减少IO操作,省空间
缺点:不支持删除,有误判
如果要支持删除操作: 改成计数布隆过滤器
2.SkipList(跳表)
核心思路: 由多层组成,每层都是一个有序链表,最底层包含所有元素,元素数逐层递减。每个节点包含两个指针,一个->,一个向下。
并行编程情况下可以用...
分类:
编程语言 时间:
2015-08-10 14:53:22
阅读次数:
225
题目:
Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST.
题解:将一个有序链表转成二叉排序树,如果是一棵相对平衡的排序树,应该是这样的,链表中间那个节点为树的根节点,根节点的左子树节点应该是根节点左边那部分的中间节点,根节点的...
分类:
编程语言 时间:
2015-07-30 09:33:16
阅读次数:
150
题目:
Given an array where elements are sorted in ascending order, convert it to a height balanced BST.
题解:
和我上面一篇将有序链表转成二叉排序树中用哈希表解的方法是一样的,基本思路:链表中间那个节点为树的根节点,根节点的左子树节点应该是根节点左边那部分的中间节点,根节点的右节点应该是根...
分类:
编程语言 时间:
2015-07-30 09:31:01
阅读次数:
120
Java集合之泛型的使用 泛型提供了一种轻便灵活的数据操作,数据的安全性相对提高。 泛型提供了对列表元素的约束条件,比如ArrayList有序链表,可存储任意类型的元素。此处构建一个ArrayList对象。ArrayList List = new ArrayList(); 可以通过List.add....
分类:
编程语言 时间:
2015-07-29 13:43:03
阅读次数:
129
对于两个有序链表合并成一个新的有序链表的代码很简单,但是要注意一些测试用例:比如说一个为空链表;两个链表不一样长,肯定最后有一个链表要单独的挂到结果链表中去的。 ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { if(l1 == NULL.....
分类:
其他好文 时间:
2015-07-28 17:55:25
阅读次数:
133
题目:
Merge k sorted
linked lists and return it as one sorted list. Analyze and describe its complexity.
题意:
合并 K 个有序的链表,把他们合并成为一个有序链表。分析并描述它的复杂度。
算法分析:
先将k个链表转化为数组,合并,之后利用Collections.sort()排序。...
分类:
编程语言 时间:
2015-07-10 15:26:45
阅读次数:
113