LeetCode
CheckOverMe
这个作者很懒,什么都没留下…
展开
-
路径总和
路径总和I给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。class Solution {public: bool hasPathSum(TreeNode* root, int sum) { if(root == NULL) return false; sum = sum - root->val; if(root->left == NULL &&原创 2020-07-07 11:30:17 · 119 阅读 · 0 评论 -
环形链表判断
给定一个链表,判断链表中是否有环。思路可以将遍历过的每一个节点地址存于哈希表中,然后每一步检查该地址是否已经存在于表中。利用快慢指针,若存在环,快指针最终会和慢指针相遇。代码/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next;...原创 2020-03-05 09:19:47 · 138 阅读 · 0 评论 -
二叉搜索树的众数(即出现频率最高的)
给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数(出现频率最高的元素)。假定 BST 有如下定义:结点左子树中所含结点的值小于等于当前结点的值结点右子树中所含结点的值大于等于当前结点的值左子树和右子树都是二叉搜索树思路1.遍历二叉树,将每个数字出现的次数存入map,然后进行统计2.中序遍历二叉树得到有序数组,然后统计/** * Definition for a ...原创 2020-03-04 10:55:37 · 357 阅读 · 0 评论 -
994.腐烂的橘子
在给定的网格中,每个单元格可以有以下三个值之一:值 0 代表空单元格;值 1 代表新鲜橘子;值 2 代表腐烂的橘子。每分钟,任何与腐烂的橘子(在 4 个正方向上)相邻的新鲜橘子都会腐烂。返回直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1。思路采用广度优先遍历,因为腐烂的橘子只会引起其周围的橘子腐烂。class Solution {public: ...原创 2020-03-04 10:22:17 · 92 阅读 · 0 评论