Menu Sidebar
Menu

December 2019

Contiguous Array

给一个0,1数组, 返回最长的0和1相等的子数组. 这个直接count也能做, 但是我看讨论中有一个解法更巧妙. 先把0变成-1, 以为n个0和1个0想加是没有区别的, 所以变成-1就可以知道有几个-1了, 然后只需要找相同的sum就可以找到-1和1的相同的位置, 只需要记录最多的个数就可以.

Frog Jump

蛙跳问题, 一般的跳数问题都是贪婪算法. 但是这个问题比较特殊, 他给的是一个排序好的递增数组,表示石头的编号, 然后青蛙可以跳k, k-1, k+1三个固定的数字, 并且青蛙只能前跳. 那么这个问题可以直接用memo+dfs来做, 用一个map充当memo, 然后只需要每次查找上面三个位置是否有石头可以跳即可.

Remove K Digits

给一个字符串表示的数, 返回删除k个数字后, 最小的那个.首先需要观察一下数字的表示, 越靠左边的数字的位数越高, 那么他 这个需要用一个数组, 把字符放到数组的index中, 数组本身, 找到前k个大的数字, 然后验证是否是递减的, 如果不是, 则删除当前的. 最后还要把leading 0去掉.

Newer Posts

书脊

这青苔碧瓦堆, 俺曾睡风流觉, 将五十年兴亡看饱.

December 2019
M T W T F S S
 1
2345678
9101112131415
16171819202122
23242526272829
3031