上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 23 下一页
摘要: 原题地址递归代码谁都会,当然是写非递归代码了。最基本的写法是用一个特殊栈同时保存节点以及节点的左孩子、右孩子是否遍历过。这种思路比较简单,跟递归写法一样很好理解。前序、中序、后序的遍历写法类似。还有一种更"屌"的写法,只需要使用普通栈即可,不需要保存左孩子、右孩子是否遍历过。基本思路是:1. 只要当... 阅读全文
posted @ 2015-01-29 10:51 李舜阳 阅读(269) 评论(0) 推荐(0)
摘要: 原题地址不用除运算和模运算的除法就退化成最基本的减法如果除数是1,被除数超大,这做减法还不得累死,所以,用位运算加快速度。对于被除数和除数都是正数的情况,除法流程为:用位运算生成小于等于当前被除数一半的数字,然后一口气减掉,如此循环往复,直到被除数小于除数。对于其他被除数和除数当中有负数的情况,为了... 阅读全文
posted @ 2015-01-29 10:27 李舜阳 阅读(271) 评论(0) 推荐(0)
摘要: 原题地址基本模拟题代码: 1 ListNode *deleteDuplicates(ListNode *head) { 2 if (!head) 3 return head; 4 5 ListNode *h = NUL... 阅读全文
posted @ 2015-01-29 09:10 李舜阳 阅读(132) 评论(0) 推荐(0)
摘要: 原题地址先把链表分割成前后两半,然后交叉融合实践证明,凡是链表相关的题目,都应该当成工程类题目做,局部变量、功能函数什么的随便整,代码长了没关系,关键是清楚,不容易出错。代码: 1 ListNode *reverseList(ListNode *head) { 2 if (!head) retu... 阅读全文
posted @ 2015-01-28 21:23 李舜阳 阅读(178) 评论(0) 推荐(0)
摘要: 原题地址如果不存在重复元素,仅通过判断数组的首尾元素即可判断数组是否连续,但是有重复元素的话就不行了,最坏情况下所有元素都一样,此时只能通过线性扫描确定是否连续。设对于规模为n的问题的工作量为T(n),则有T(n) = T(n/2) + O(n),根据主定理,可以求得T(n) = O(n)。和之前的... 阅读全文
posted @ 2015-01-28 19:55 李舜阳 阅读(124) 评论(0) 推荐(0)
摘要: 原题地址简单模拟题。从先向后遍历,如果重复出现2次以上,就不移动,否则移动到前面去代码: 1 int removeDuplicates(int A[], int n) { 2 if (n == 0) return n; 3 4 int len = 1... 阅读全文
posted @ 2015-01-28 17:05 李舜阳 阅读(138) 评论(0) 推荐(0)
摘要: 原题地址依次枚举起始点,DFS+回溯代码: 1 bool dfs(vector > &board, int r, int c, string word) { 2 int m = board.size(); 3 int n = board[0].size(); 4 int dir[4][2... 阅读全文
posted @ 2015-01-28 16:55 李舜阳 阅读(253) 评论(0) 推荐(0)
摘要: 原题地址有两种方法:1. 对于序列S,其子集可以对应为一个二进制数,每一位对应集合中的某个数字,0代表不选,1代表选,比如S={1,2,3},则子集合就是3bit的所有二进制数。所以,照着二进制位去构造解空间即可。2. 也可以用DFS做,对于每个元素,要么选,要么不选。记得先排序,因为结果集的数字要... 阅读全文
posted @ 2015-01-28 16:26 李舜阳 阅读(176) 评论(0) 推荐(0)
摘要: 原题地址生成字典序,交换 + 逆序生成字典序的方法:1. 从后向前,寻找第一个正序对,即num[i] &num) { 2 int i = num.size() - 2; 3 while (i >= 0 && num[i] >= num[i + 1]) 4 ... 阅读全文
posted @ 2015-01-28 15:49 李舜阳 阅读(525) 评论(0) 推荐(0)
摘要: 原题地址w指针遍历数组,如果w跨过b,则退出若w指向的元素是白色,指针右移若w指向的元素是红色,交换w和r指向的元素若w指向的元素是蓝色,交换w和b指向的元素代码: 1 void sortColors(int A[], int n) { 2 int r = 0; 3 int w = 0; 4... 阅读全文
posted @ 2015-01-28 15:30 李舜阳 阅读(172) 评论(0) 推荐(0)
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 23 下一页