摘要:"60. 第k个排列" 还是使用之前用过多次的nextPermutation方法。。。(几乎所有跟排列相关的题都是同一个题 ) class Solution { public String getPermutation(int n, int k) { int[] nums = new int[n]; 阅读全文
posted @ 2018-07-23 23:43 ACBingo 阅读 (157) 评论 (0) 编辑
摘要:"59. 螺旋矩阵 II" 这题跟 "54. 螺旋矩阵" 讨论是一样的 就不废话了 class Solution { public int[][] generateMatrix(int n) { int[][] dx = {{0, 1}, {1, 0}, {0, 1}, { 1, 0}}; bool 阅读全文
posted @ 2018-07-23 23:37 ACBingo 阅读 (45) 评论 (0) 编辑
摘要:"58. 最后一个单词的长度" 这题别看简单,但是恶心啊。。。我粗心大意交错了好几次23333 阅读全文
posted @ 2018-07-23 23:26 ACBingo 阅读 (52) 评论 (0) 编辑
摘要:"57. 插入区间" 把这个newInterval加入到list中,然后调用 "56. 合并区间" 的代码。。。 不过,既然人家题都出了,且说给出的就是一个无重叠、已经排好序的List,让你只插一个就好。那我们是不是可以只针对这一个插入的处理呢? 当然可以了,首先可以先找到newInterval.s 阅读全文
posted @ 2018-07-23 23:09 ACBingo 阅读 (33) 评论 (0) 编辑
摘要:"56. 合并区间" 先对输入排序,然后从前到后判断即可 今天刚学了java的lambda,正好拿来练练手,写起来确实爽。 阅读全文
posted @ 2018-07-23 22:57 ACBingo 阅读 (139) 评论 (0) 编辑
摘要:"55. 跳跃游戏" 分明就是 "45. 跳跃游戏 II" 的缩水版本嘛。。😓,难度高的版本居然放在了前面,把像我这种有强迫症的必须按照题号刷题的人不放在眼里么。。。 class Solution { public boolean canJump(int[] nums) { return jump 阅读全文
posted @ 2018-07-23 22:20 ACBingo 阅读 (27) 评论 (0) 编辑
摘要:"54. 螺旋矩阵" 模拟 还是用老技巧,用一个dx来描述某个方向的i,j坐标变换情况。 int[][] dx = {{0, 1}, {1, 0}, {0, 1}, { 1, 0}}; 如果按题目中的例子来看的话,分别表示向左,下,右,上走时,i,j坐标应该如何变换 class Solution { 阅读全文
posted @ 2018-07-23 22:11 ACBingo 阅读 (224) 评论 (0) 编辑
摘要:"53. 最大子序和" 贪心 这题就跟个脑筋急转弯一样,从第一个开始累加,如果累加和低于0了,说明前面的肯定不能要,重新开始累加即可嘛 class Solution { public int maxSubArray(int[] nums) { int ans = Integer.MIN_VALUE; 阅读全文
posted @ 2018-07-23 21:46 ACBingo 阅读 (27) 评论 (0) 编辑
摘要:"52. N皇后 II" 跟上个题一模一样,现在只需输出个数即可 class Solution { public int totalNQueens(int n) { boolean[] row = new boolean[n]; boolean[] h = new boolean[2 n]; boo 阅读全文
posted @ 2018-07-23 00:22 ACBingo 阅读 (75) 评论 (0) 编辑
摘要:"51. N皇后" 啊,经典的N皇后问题。想当初高中练NOIP的时候,这个题把我折磨了好久 经典的dfs+回溯问题 4个约束条件,题中没有明确指出(并不是所有人都知道国际象棋的规则啊喂): 一个皇后在其横纵线与两条斜线上,不能存在其它皇后。 我们来用4个数组来记录对应的4个约束状态(其实3个就够了) 阅读全文
posted @ 2018-07-23 00:21 ACBingo 阅读 (65) 评论 (0) 编辑