摘要: 哎,难题又不会做,思路没有什么难度,关键是要把问题思考透彻,要考虑的要点还是挺多的,不容易一下子都考虑到;我开始的思路是按照树的根去递归的,这样就必须要没有重复元素,因为需要每次在s2中查找s1中的元素;怎么说呢,有点考虑的过于specific了,其实直接把字符串分成两部分递归就可以了,不过需要注意不能漏掉两部分可能次序调换的情况。 1 class Solution { 2 public: 3 bool isScramble(string s1, string s2) { 4 // Start typing your C/C++ solution below 5 ... 阅读全文
posted @ 2013-09-10 21:59 Exio 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 看懂题目后非常简单,找到规律就比较好写了,如果已经有最低k位的格雷码了的话,只需要把k+1位变成1,然后和前面k位的格雷码组合在一起就行了,这时候前k位格雷码的顺利要倒过来; 1 class Solution { 2 public: 3 vector grayCode(int n) { 4 // Start typing your C/C++ solution below 5 // DO NOT write int main() function 6 vector res; 7 if (n &res, int k, in... 阅读全文
posted @ 2013-09-10 10:03 Exio 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 哎,写代码太不专注了,还是头脑和注意力不够集中,需要多在脑子里面磨练,另外写程序的思维方式还比较土,总喜欢单独考虑很多特殊情况,导致代码看起来很繁琐,需要多看别人的代码好好学习如何写得简洁短小; 1 class Solution { 2 public: 3 vector restoreIpAddresses(string s) { 4 // Start typing your C/C++ solution below 5 // DO NOT write int main() function 6 vector res; 7 ... 阅读全文
posted @ 2013-09-10 09:59 Exio 阅读(266) 评论(0) 推荐(0) 编辑