
算法
Antaresz
这个作者很懒,什么都没留下…
展开
-
二叉树题型思考总结
题目很容易,写这篇博客是为了记录一下写递归函数的技巧首先如果发现该题的遍历顺序应该为:先序遍历,自底向下返回子树高度。那么易解class Solution { public boolean isBalanced(TreeNode root) { return recur(root) != -1; } //函数作用:求子树高度 priv...原创 2020-05-01 18:23:55 · 418 阅读 · 0 评论 -
leetcode17. 电话号码的字母组合(回溯)
经典的回溯问题,大体框架如下depth = 0result = []public void backtrack(路径, 选择列表,depth): if 满足结束条件: result.add(路径) return for 选择 in 选择列表: 做选择 backtrack(路径, 选择列表,depth+1...原创 2020-04-28 18:55:57 · 236 阅读 · 0 评论 -
leetcode面试题 08.11. 硬币(完全背包,动态规划)
代码如下class Solution { public int waysToChange(int n) { int[] dp = new int[n + 1]; int[] coins = new int[]{1,5,10,25}; dp[0]=1; /** * ...原创 2020-04-24 17:15:15 · 334 阅读 · 0 评论 -
从leetcode1. 两数之和循序渐进(双指针,BST,哈希表)
leetcode1. 两数之和1.之前只知道堆排序那种标志数组,所以看到第一眼就想到那个方面去了。但在本题数组里面存储某个数出现的次数对该题是没有意义的,应该存储某个数出现的位置。2.哈希表是优化遍历数组寻找某个数的很好方法,看情况需要改数的值还是位置决定其中的value是什么class Solution { public int[] twoSum(int[] nums, int ...原创 2020-04-16 17:42:47 · 232 阅读 · 0 评论 -
leetcode找出数组中重复的数字
class Solution { public int findRepeatNumber(int[] nums) { int flag[]=new int[nums.length]; for(int i:nums){ flag[i]=flag[i]+1; } for(int j=0;j<flag....原创 2020-04-04 11:56:17 · 488 阅读 · 1 评论