280. Wiggle Sort: 这题主要先用quick-sort in-place sort一遍,然后在用一些swap的方法调换一下位置就可以了。但是quicksort还是不熟悉啊,所以从今天起,每天手写一遍quicksort和mergesort,包括非递归写法。
513. Find Bottom Left Tree Value: level traversal,凡是涉及到level traversal的都比较简单
413. Arithmetic Slices: 有点bfs的意思,因为每一层和上一层都有关系
406. Queue Reconstruction by Height: 仔细去想应该还是可以想出来的,还是要沉下心多花点时间。
370. Range Addition: 看来要一半题目都不会做了啊。。。啊啊啊。。。,不过这题真的好难啊,非常规问题,利用了prefixsum来计算累计的运算,只是要记录prefixsum的终止点
526. Beautiful Arrangement: 这题主要是要准确识别出是backtracking的题目,如果认出是backtracking的题目,那就很简单了
369. Plus One Linked List: linkedlist都是比较简单的题目,不过要注意开始和终止条件
515. Find Largest Value in Each Tree Row: level traversal,还算简单吧
442. Find All Duplicates in an Array: array就是天然的hash,可以利用sign(+-)来跟踪值,用abs取回原值
553. Optimal Division: 如果题目太复杂,就想办法利用一些数学上的trick
362. Design Hit Counter: 这些设计的题目可以多做做,利用数组本身来作为hashtable