02 2020 档案

摘要:在受污染的二叉树中查找元素 "LeetCode 1261" 阅读全文
posted @ 2020-02-25 22:27 Garrett_Wale 阅读(172) 评论(0) 推荐(0) 编辑
摘要:宝石与石头 "LeetCode 771" 使用哈希表。 这里使用内置算法库中的map 阅读全文
posted @ 2020-02-25 20:18 Garrett_Wale 阅读(126) 评论(0) 推荐(0) 编辑
摘要:比特位计数 "LeetCode 338" 奇数的1的个数一定比上一个偶数的1多一个。 偶数的1一定和该偶数1/2的偶数的1一样多。 阅读全文
posted @ 2020-02-24 21:51 Garrett_Wale 阅读(126) 评论(0) 推荐(0) 编辑
摘要:二叉搜索树的第k大节点 "LeetCode 面试题54" 需要充分了解二叉搜索树的性质. 利用中序遍历的思想,采用相反的思想:先遍历右节点再遍历左节点。 阅读全文
posted @ 2020-02-24 20:26 Garrett_Wale 阅读(328) 评论(0) 推荐(0) 编辑
摘要:重建二叉树 "LeetCode 105" 首次需要知道前序遍历和中序遍历的性质。 解题思路如下:首先使用前序比遍历找到根节点,然后使用中序遍历找到左右子树的范围,再分别对左右子树实施递归重建。 本题的难点就是如何在前序遍历中找到左右子树的范围以分别重构,这可以根据中序遍历中的左右子树的数量来分辨。使 阅读全文
posted @ 2020-02-23 21:07 Garrett_Wale 阅读(191) 评论(0) 推荐(0) 编辑
摘要:二叉搜索树的范围和 "LeetCode 938" 1. 首先需要仔细理解题目的意思:找出所有节点值在L和R之间的数的和。 2. 这里采用递归来完成,主要需要注意二叉搜索树的性质。 阅读全文
posted @ 2020-02-23 20:13 Garrett_Wale 阅读(136) 评论(0) 推荐(0) 编辑
摘要:祖父节点值为偶数的结点值之和 "LeetCode 1315" 这题稍微难度有点大,但是仔细思考还是可以找到思路的。 因为只需要找到祖父节点这最上两层,所以可以带一个参数记录一下祖父节点是否是偶数,以及父节点是否是偶数。 求解的时候还需要注意本身结点是否是偶数,这个时候再改变参数的值。 阅读全文
posted @ 2020-02-22 21:39 Garrett_Wale 阅读(175) 评论(0) 推荐(0) 编辑
摘要:层数最深叶子结点的和 "LeetCode 1302" 这里可以采用上一题中求解二叉树的深度的方法。 因为需要记录最深结点的值的和,所以这里可以边求和,如果遇到不符合最深结点时再将和sum=0. 阅读全文
posted @ 2020-02-22 20:21 Garrett_Wale 阅读(401) 评论(0) 推荐(0) 编辑
摘要:二叉树的深度 "二叉树的深度" 使用递归求解二叉树的深度。 需要注意使用的临界条件。 阅读全文
posted @ 2020-02-22 20:01 Garrett_Wale 阅读(117) 评论(0) 推荐(0) 编辑
摘要:#对称二叉树 ##symmetric tree 和上一题的镜像树很相似,这里是判断是否是对称树,需要利用镜像树的性质。 对称树满足两个性质: 2.1. 两个子树的结点值需要相同。 2.2. 第一颗树的左子树和第二课树的右子树也满足这种对称树的关系(结点值相同)。 使用递归求解较容易想到,还可以使用迭 阅读全文
posted @ 2020-02-21 21:45 Garrett_Wale 阅读(104) 评论(0) 推荐(0) 编辑
摘要:二叉树的镜像 "二叉树的镜像" 1. 给定一个二叉树,输出二叉树的镜像。 2. 只需要使用一个简单的递归,分别对左右子树反转后再对当前结点进行反转。 阅读全文
posted @ 2020-02-21 21:08 Garrett_Wale 阅读(144) 评论(0) 推荐(0) 编辑
摘要:特定深度节点链表 求解每一层二叉树从左到右遍历形成的链表 "list of depth lcci" 这是关于二叉树的问题,遍历每一层的结点并且存在链表中。 可以采取队列类似于广度优先搜索的方法进行搜索。每次出队列时,首先记录队列中还有多少个同一层的结点,再遍历所有这些结点并且将左右结点再次进栈。 阅读全文
posted @ 2020-02-21 20:36 Garrett_Wale 阅读(129) 评论(0) 推荐(0) 编辑
摘要:快速排序 "LanQiao 297" include include include include using namespace std; //每一趟返回一个数的确定位置 int onePart(int a,int i,int j){ int orig=a[i]; while(i=orig;k 阅读全文
posted @ 2020-02-06 19:37 Garrett_Wale 阅读(91) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示