Word Break (C++)

2013年10月08日 23:15

要首先挑dict里面长的string进行匹配,不然容易超时。对unordered_set不太熟,就用vector<string>排序了一下dict. 对于sort,自己写个比较函数也行,注意要是static,否则会报错,显示cmp的参数不对。因为这是在class里,有一个隐含的this参数,而sort的比较函数是默认没有这个参数的,这一点还是宋大牛指出的。

static bool cmp(string const &a, string const &b) {return a.length() > b.length();}
sort(sorted_dict.begin(), sorted_dict.end(), cmp);

继续阅读

Pow(x, n) (C++)

2013年9月24日 01:06

Implement pow(x, n). 一上来就超时了,看了“水中的鱼”的解体报告才知道用二分。

继续阅读

Same Tree (C++, Python)

2013年9月24日 01:03

Given two binary trees, write a function to check if they are equal or not. Two binary trees are considered equal if they are structurally identical and the nodes have the same value.

 

继续阅读

Maximum Depth of Binary Tree (C++)

2013年9月24日 00:59

Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.

继续阅读

广BFS(一层一层走): http://blog.csdn.net/raphealguo/article/details/7523411   节点是某种状态,边是节点与节点间的某种规则。适合: 给定初始状态跟目标状态,要求从初始状态到目标状态的最短路径。节点的子节点数量不多,树的层次不深。在树的层次较深&子节点数较多的情况下,消耗内存十分严重。

继续阅读