摘要: "50. Pow(x, n)" ACM时快速幂都快用烂了。。。此题思路类似 假如 n = 13,13在二进制中表示为:00001101,那么13 = 2^3 + 2^2 + 2^0 class Solution { public double myPow(double x, int n) { int阅读全文
posted @ 2018-07-22 17:24 ACBingo 阅读(23) 评论(0) 编辑
摘要: "49. 字母异位词分组" 桶排分类即可 class Solution { public List groupAnagrams(String[] strs) { Map map = new HashMap(); for (String str : strs) { map.computeIfAbsen阅读全文
posted @ 2018-07-22 17:10 ACBingo 阅读(95) 评论(0) 编辑
摘要: "48. 旋转图像" 模拟题,其实挺不喜欢做模拟题的。。。 其实这题一层一层的转就好了,外层转完里层再转,其实就是可重叠的子问题了。 转的时候呢,一个数一个数的转,一个数带动四个数。如图所示,2这个数应该怎么转: 难点就是如何用坐标表示出来相对位置,写坐标的时候思路一定要清晰啊! class Sol阅读全文
posted @ 2018-07-22 16:42 ACBingo 阅读(184) 评论(0) 编辑
摘要: "47. 全排列 II" 比上一个题多了个重复性 与 "46. 全排列" 完全一样的代码。。。阅读全文
posted @ 2018-07-22 15:30 ACBingo 阅读(196) 评论(0) 编辑
摘要: "46. 全排列" 这题我们可以借用 "31. 下一个排列" 写的nextPermutation函数来做,稍微改造一下即可 注意要先给nums排个序阅读全文
posted @ 2018-07-22 15:26 ACBingo 阅读(453) 评论(0) 编辑
摘要: "45. 跳跃游戏 II" 动态规划 此题可以倒着想。 看示例: [2,3,1,1,4] 我们从后往前推,对于第4个数1,跳一次 对于第3个数1,显然只能跳到第4个数上,那么从第3个数开始跳到最后需要两次 对于第2个数3,显然一步到位,跳一次 对于第一个数2,只能选择跳一次还是跳两次,显然选择跳一次阅读全文
posted @ 2018-07-22 15:07 ACBingo 阅读(561) 评论(0) 编辑
摘要: "875. 爱吃香蕉的珂珂" 这题时间要求比较严格。。。 首先,将piles排序,然后二分查找。 总之,答案K肯定位于piles[?]~piles[?+1]或者1~piles[0]之间 所以我们先二分把?找到,然后再二分找到K即可 class Solution { public int minEat阅读全文
posted @ 2018-07-22 11:41 ACBingo 阅读(449) 评论(0) 编辑
摘要: "874. 行走机器人模拟" 模拟 描述方向时有个技巧:int[][] dx = {{0, 1}, {1, 0}, {0, 1}, { 1, 0}}; 分别存储机器人向上、右、下、左走时,坐标应该如何变换 class Solution { public int robotSim(int[] comm阅读全文
posted @ 2018-07-22 11:36 ACBingo 阅读(648) 评论(0) 编辑
摘要: "872. 叶子相似的树" 前序遍历,记录叶子节点即可阅读全文
posted @ 2018-07-22 11:34 ACBingo 阅读(161) 评论(0) 编辑