注: 以下题目都是根据 LeetCode App上的顺序,按照由易到难排列(与其他列表有重复的题目就略过了)
704、二分查找,给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1
点击看答案
这题目自己写得还不错
自己写的时候的问题:无
参考链接:LeetCode
最小k个数
点击看答案
使用 PriorityQueue 代替自己建堆
自己写的时候的问题:Comparator 单词没写对,还有 Comparator 应该是个泛型,后面要接上
参考链接LeetCode
- 二叉树的最大深度
参考别人的思想
https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/
- 平衡二叉树
参考别人的思想
- N叉树的最大深度
依葫芦画瓢
https://leetcode-cn.com/problems/maximum-depth-of-n-ary-tree/
- 二叉树的最小深度
我去,审题啊,叶节点啊,[1,2]的时候,叶节点是2啊,1还不是叶节点。
- 翻转二叉树
我去,面试google的那个牛人都没能写出来,我写出来了,额。。其实不就是每个结点都在翻转么。估摸着是那个哥们紧张了吧。
- 对称二叉树
右边比左边,左边比右边
面试题 03.04. 化栈为队
别人的想法太巧妙了,pop 或者 peek 的时候,只要辅助栈的元素不空,就可以出去。为空就将原本栈的元素倒入到辅助栈再pop或者peek。
- 宝石与石头
真心傻逼了,用 if(!set.add(charAt(i))) 去判断,应该只要 if(set.contains(charAt(i))) 即可。
- 整数的各位积和之差
乘积的初始值应该为1啊,蛋疼,居然初始化为 0
https://leetcode-cn.com/problems/subtract-the-product-and-sum-of-digits-of-an-integer/
- 将数字变成 0 的操作次数
while循环到num == 0 为止
https://leetcode-cn.com/problems/number-of-steps-to-reduce-a-number-to-zero/
- 统计位数为偶数的数字
转成字符串看length不就好了,还要想着去除,唉
https://leetcode-cn.com/problems/find-numbers-with-even-number-of-digits/
- 有多少小于当前数字的数字
1、快排的条件有点忘了,最开始的判断条件 front > tail,while循环中要有 nums[j] >= pvoit 、num[i] <= pvoit ,一轮while 之后,要执行 nums[start] = nums[front]; nums[front] = pvoit;
2、对于数组,int[] nums = {1,4,8,50,2,44,2};可以执行 nums.clone() 能将数组复制一份
https://leetcode-cn.com/problems/how-many-numbers-are-smaller-than-the-current-number/
面试题 02.03. 删除中间节点
脑筋急转弯