Skip to content

Latest commit

 

History

History
261 lines (150 loc) · 8.94 KB

File metadata and controls

261 lines (150 loc) · 8.94 KB
  1. 各种排序

    1. 冒泡排序(n2 稳定)、
    2. 插入排序(n2 稳定)
    3. 选择排序 (n2 不稳定)
    4. 快速排序(n*logn 不稳定)
    5. 归并排序(nlogn 稳定,非原地排序)
    6. 二分查找以及变种
  2. 191. 位1的个数 (已处理)

  3. 231. 2的幂(已处理)

  4. 64. 最小路径和

  5. 300. 最长上升子序列

  6. 3. 无重复字符的最长子串

  7. 198. 打家劫舍

  8. 70. 爬楼梯

  9. 120. 三角形最小路径和 (已处理)

  10. 14. 最长公共前缀

  11. 22. 括号生成

  12. 39. 组合总和

  13. 40 . 组合总和 II

  14. 46. 全排列

  15. 78. 子集

  16. 283. 移动零

  17. 20 有效的括号

  18. 49. 字母异位词分组

  19. 50. Pow(x, n)

  20. 121. 买卖股票的最佳时机 买卖股票升级版

  21. 152. 乘积最大子数组(已处理)

  22. 15. 三数之和

  23. 227. 基本计算器 II

  24. 72. 编辑距离

  25. 79. 单词搜索

  26. 518. 零钱兑换 II ???

  27. 279. 完全平方数

  28. 343. 整数拆分

  29. 剑指 Offer 57 - II. 和为s的连续正数序列

  30. 416. 分割等和子集

  31. 19. 删除链表的倒数第N个节点

    fast = pre;

    slow = pre;

  32. 21. 合并两个有序链表

    p = p.next;

  33. Return pre;

  34. 141 环形链表

    while(fast !=null || fast.next != null)

  35. if(head.val == head.next.val){
                   head.next = head.next.next;
               }else{
                   head = head.next;
               }
  36. ListNode fast = head;
    ListNode slow = head;
    
    while(fast != null && fast.next != null ){
  37. ListNode fast = head;

    ListNode slow = head;

  38. 7. 整数反转

    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; }

  39. 88. 合并两个有序数组

    int k = m+n-1;
    // j>=0 表示 较小的数组必须走完,A数中整数较小的话不用遍历完
    while(j >=0){
       if( i >=0 && nums2[j] < nums1[i]){
       nums1[k--] = nums1[i--];
  40. 704. 二分查找

  41. 二分查找的变种 com.chen.algorithm.bsearch/AdviceBsearch

  42. 225. 用队列实现栈

  43. 232 用栈实现队列

  44. 199. 二叉树的右视图

  45. 101. 对称二叉树

  46. 111. 二叉树的最小深度

最大岛屿数,

机器人走格子, 矩阵中的路径

翻转链表 m-n翻转链表---92 k个一组翻转链表 topK 股票问题 合并有序链表 k个有序数组的合并 出现次数最高的n个单词 手撕LRU 三数之和 二叉树遍历 集合的所有子集 排序算法 背包问题 全排列 KMP算法 二分查找