Container With Most Water
给一个数组, 表示一些bar的高度, 求这些bar组成的面积最大. 这个就是两个指针挨个试…
给一个数组, 表示一些bar的高度, 求这些bar组成的面积最大. 这个就是两个指针挨个试…
给一个string, 每个digit表示一个电话号码的数字, 返回所有可能的英文的组合. 就是dfs
给一个linked list和一个数, 删除list后边n个node. 这个用双指针经典做法
给一个数, 返回所有的可能的括号. 求组合, 肯定是dfs, 然后括号肯定是现有左边再有右边. 所以先放左边.
给k个sorted list, 然后merge. 用一个heap存每个list的当前元素. 然后组一个list.
给一个数组, 两个人只能从两端取数, 求预测那个人能赢. 我就是dfs直接做的, 不过时间太大了. 我看到答案用的是贪婪算法, 选的人肯定选start和end中相对大的, 但是找到这个大的, 需要通过dfs.
给一个数组, 和一个数, 问有多少种方法能用加减得到这个数. 很明显只能dfs+memo
给个数组A, 他是环状数组. 求一个数组B, B的每一个元素都是A中下一个比当前大的元素. 这个题和I其实差不多的做法, 也是用stack倒着存数组.
给两个数组A,B, A数组是B数组的子数组, 求一个数组C, 使得C每一个数字在B都大于A. 这个题可以直接扫, 就是n^2的复杂度, 也可以用一个stack倒着装数组的元素, 然后用一个map记录位置, 这样在B里每遇到一个元素, 都在stack里找一下. 注意B里没有一个大于A的(比如, 倒排序), 这时候要用-1取代位置.