-
各种排序
- 冒泡排序(n2 稳定)、
- 插入排序(n2 稳定)
- 选择排序 (n2 不稳定)
- 快速排序(n*logn 不稳定)
- 归并排序(nlogn 稳定,非原地排序)
- 二分查找以及变种
-
191. 位1的个数 (已处理)
-
231. 2的幂(已处理)
-
120. 三角形最小路径和 (已处理)
-
152. 乘积最大子数组(已处理)
-
518. 零钱兑换 II ???
-
fast = pre;
slow = pre;
-
p = p.next;
-
Return pre;
-
while(fast !=null || fast.next != null)
-
if(head.val == head.next.val){ head.next = head.next.next; }else{ head = head.next; }
-
ListNode fast = head; ListNode slow = head; while(fast != null && fast.next != null ){
-
ListNode fast = head;
ListNode slow = head;
-
if(res>Integer.MAX_VALUE/10||(res == Integer.MAX_VALUE/10 && rec>7)){ return 0; } if(res< Integer.MIN_VALUE/10||(res == Integer.MIN_VALUE/10&& rec<-8)){ return 0; }
-
int k = m+n-1; // j>=0 表示 较小的数组必须走完,A数中整数较小的话不用遍历完 while(j >=0){ if( i >=0 && nums2[j] < nums1[i]){ nums1[k--] = nums1[i--];
-
二分查找的变种 com.chen.algorithm.bsearch/AdviceBsearch
最大岛屿数,
机器人走格子, 矩阵中的路径
翻转链表 m-n翻转链表---92 k个一组翻转链表 topK 股票问题 合并有序链表 k个有序数组的合并 出现次数最高的n个单词 手撕LRU 三数之和 二叉树遍历 集合的所有子集 排序算法 背包问题 全排列 KMP算法 二分查找