数据结构
文章平均质量分 69
stephen_wong
这个作者很懒,什么都没留下…
展开
-
PAT 1066. Root of AVL Tree
AVL树 维基百科原创 2014-05-30 05:04:57 · 844 阅读 · 0 评论 -
List C++ Implementation
#include template class List{public: List(): next(NULL) {} List(T x): val(x), next(NULL) {} List(T x, List* n): val(x), next(n) {} T val; List* next;};templateList* make_empty(List* list原创 2014-08-30 19:35:29 · 831 阅读 · 0 评论 -
九度 题目1009:二叉搜索树 (静态数组构建二叉树\二叉树的数组实现)
题意:给定序列,将序列中的数字一个一个插入到二叉查找树中。问不同的序列,最终生成的二叉查找树是否相同。可以用静态数组构建二叉树。原创 2015-02-04 11:15:54 · 1373 阅读 · 0 评论 -
LeetCode 155. Min Stack
相较普通的栈,题目要求多实现一个操作getMin(): 获取栈中最小的元素 我们维护两个栈:普通栈s保存所有元素, 最小栈min_s保存s中的“曾出现过”的最小元素的递减序列。min_s.top()即为getMin()的返回值,标识普通栈s里的最小元素。考虑压栈 3 4 5 2 3 1, 它们有如下表现:push 3 4 5 2 3 1s 3原创 2015-02-24 10:56:34 · 1090 阅读 · 3 评论 -
LeetCode 211. Add and Search Word - Data structure design
借用LeetCode 208. Implement Trie (Prefix Tree)中设计的字典树,特判查询字符为.时的情况即可。注意:成员变量的初始化应放在构造函数的initializing list而不是body中,使成员变量只被初始化一次,没有被再次赋值;使用shared_ptr代替裸指针来管理内存。代码:class TrieNode{public: T原创 2015-08-10 10:50:13 · 1125 阅读 · 0 评论 -
LeetCode 208. Implement Trie (Prefix Tree)
字典树。测试中有:aaaaaaaaaaa... 的输入,如果每个节点用定长数组存储孩子的话,那就是26^len的空间复杂度(len为输入的长度),内存会不够的。所以用map保存其孩子。代码:#include #include #include using namespace std;class TrieNode{public: // Initialize原创 2015-07-27 19:56:00 · 1087 阅读 · 0 评论