上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 25 下一页
摘要: 反转数字请看:http://www.cnblogs.com/stAr-1/p/8423922.html 阅读全文
posted @ 2018-02-06 13:37 stAr_1 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 重点是: 1.快慢指针找到链表的中点。快指针一次走两步,慢指针一次走一步,分清奇偶数情况。 2.反转链表。pre代表已经反转好的,每次将当前节点指向pre 阅读全文
posted @ 2018-02-06 13:36 stAr_1 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 类似于找链表的后k个节点 不同的是要把前边的接到后边 public ListNode rotateRight(ListNode head, int k) { //特殊情况 if (head==null||head.next==null||k==0) return head; int len = 0; 阅读全文
posted @ 2018-02-05 21:58 stAr_1 阅读(157) 评论(0) 推荐(0) 编辑
摘要: dfs的第一题 被边界和0包围的1才是岛屿,问题就是分理出连续的1 思路是遍历数组数岛屿,dfs四个方向,遇到1后把周围连续的1置零,代表一个岛屿。 阅读全文
posted @ 2018-02-05 13:36 stAr_1 阅读(143) 评论(0) 推荐(0) 编辑
摘要: public int widthOfBinaryTree(TreeNode root) { /* 层序遍历+记录完全二叉树的坐标,左孩子2*i,右孩子2*i+1 而且要有两个变量,一个记录本层节点数,一个记录下层节点数 层序遍历用队列实现 还要有一个队列记录本层的下标 */ //层序... 阅读全文
posted @ 2018-02-04 18:13 stAr_1 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 根据BST的特点,如果小于L就判断右子树,如果大于R就判断左子树 递归地建立树 阅读全文
posted @ 2018-02-03 18:57 stAr_1 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 每次找到数组中的最大值,然后递归的构建左右树 阅读全文
posted @ 2018-02-03 18:31 stAr_1 阅读(142) 评论(0) 推荐(0) 编辑
摘要: public TreeNode addOneRow(TreeNode root, int v, int d) { if (d==1) { TreeNode res = new TreeNode(v); res.left = root; return res; } ... 阅读全文
posted @ 2018-02-03 13:09 stAr_1 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 和求直径的那个题思路差不多,不过这个题要判断是不是相等。 阅读全文
posted @ 2018-02-01 09:28 stAr_1 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 题目中的直径定义为: 任意两个节点的最远距离 没想出来,看的答案 思路是:diameter = max(左子树diameter,右子树diameter,(左子树深度+右子树深度+1)) 遍历并更新结果 阅读全文
posted @ 2018-01-31 21:40 stAr_1 阅读(128) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 25 下一页