6.30 - medium总结4

59. Spiral Matrix II: 这道题比上一个spiral matrix1好做,只要记录一下每一次的top row, bot row,left col 和right col就可以了
60. Permutation Sequence: 用普通的backtracking的方法会TLE,可以利用一些数学的方法,比如说xyyy,x后面有三个值的话,那么就会有321中可能性,也就是说1yyy有六种,2yyy有六种,这时候用 (n -1)/ 6 就可以得到第一位落在了哪里,就把那个值从candidate list里pop出去,更新n再找第二位。
61. Rotate List: 把k先mod一下,找到最后一个点,切割一下就可以了
62. Unique Paths: 最基础的dp题
63. Unique Paths II: 也是很简单的dp题对于这些dp题,要开一篇如何对dp进行空间优化的专贴。
64. Minimum Path Sum:还是基础的dp题, 这道题可以优化的地方在于,可以用grid本身来作为dp的存储空间
71. Simplify Path: 这题不要被各种".."困惑,只要先按照“/”split,然后再逐位处理就可以了
73. Set Matrix Zeroes: 这题考察的是如何inplace操作,先把所有可能是0的设为“#”,然后再loop一遍matrix
74. Search a 2D Matrix: 左下到右上search
75. Sort Colors: 因为只有三个值,所以只要维护一个head, cur, tail就可以了,移动cur,如果cur指向0,那么和head swap,增加head,如果cur指向2,则和tail swap,减少tail,否则移动cur。

你可能感兴趣的:(6.30 - medium总结4)