当前位置 博文首页 > 徐明晓的博客:算法(上)

    徐明晓的博客:算法(上)

    作者:[db:作者] 时间:2021-09-04 15:31

    算法

    文章目录

    • 算法
          • 1. 数组
            • 1. 剑指Offer:数组旋转
            • 2. 剑指Offer:调整数组顺序使奇数位于偶数前面
            • 3. 剑指Offer: 顺时针打印矩阵
            • 4. 剑指Offer: 数组中出现次数超过一半的数字
            • 5. 剑指Offer:丑数
            • 6. 剑指Offer: 数组中的逆序对
            • 7. 剑指Offer: 扑克牌顺子
            • 8. 剑指Offer: 数组中重复的数字
            • 9. 剑指Offer: 构建乘积数组
            • 10. 剑指Offer: 数据流中的中位数
            • 11. 剑指Offer: 矩阵中的路径
          • 2. 链表
            • 1. 剑指Offer:从尾到头打印链表
            • 2. 剑指Offer: 链表中倒数第k个结点
            • 3. 剑指Offer: 反转链表
            • 4. 剑指Offer: 合并两个排序的链表
            • 5. 剑指Offer: 复杂链表的复制
            • 6. 剑指Offer: 两个链表的第一个公共结点
            • 7. 剑指Offer: 孩子们的游戏(圆圈中最后剩下的数)
            • 8. 剑指Offer: 链表中环的入口结点
            • 9. 剑指Offer: 删除链表中重复的结点
            • 10. LeetCode:归并两个有序的链表 (递归)
            • 11. LeetCode:[两两交换链表中的节点](https://leetcode-cn.com/problems/swap-nodes-in-pairs/)
          • 3. 栈和队列
            • 1. 剑指Offer:用两个栈实现队列
            • 2. 剑指Offer: 包含min函数的栈
            • 3. 剑指Offer:栈的压入、弹出序列
          • 4. 字符串
            • 1. 剑指Offer:替换空格
            • 2. 剑指Offer: 字符串的排列
            • 3. 剑指Offer:整数中1出现的次数
            • 4. 剑指Offer:把数组排成最小的数
            • 5. 剑指Offer: 第一个只出现一次的字符
            • 6. 剑指Offer: 翻转单词顺序列
            • 7. 剑指Offer: 把字符串转换成整数
            • 8. 剑指Offer: 正则表达式匹配
            • 9. 剑指Offer: 表示数值的字符串
            • 10. 剑指Offer: 字符流中第一个不重复的字符(重要)
            • 11. 数据结构与算法:KMP算法
            • 12. 数据结构与算法:Rabin-Karp算法
            • 13. LeetCode:最长公共子序列
            • 14. LeetCode:字符串的排列及题目改进
            • 15. LeetCode:无重复字符的最长子串
            • 16. LeetCode: 最长重复子串
          • 5. 树
            • 1. 剑指Offer:重建二叉树
            • 2. 剑指Offer: 树的子结构
            • 3. 剑指Offer: 二叉树的镜像
            • 4. 剑指Offer: 从上往下打印二叉树
            • 5. 剑指Offer: 二叉搜索树的后序遍历
            • 6. 剑指Offer: 二叉树中和为某一值的路径
            • 7. 剑指Offer: 二叉搜索树与双向链表
            • 8. 剑指Offer: 二叉树的深度
            • 9. 剑指Offer: 平衡二叉树
            • 10. 剑指Offer: 二叉树的下一个结点
            • 11. 剑指Offer: 对称的二叉树
            • 12. 剑指Offer: 按之字形顺序打印二叉树
            • 13. 剑指Offer: 把二叉树打印成多行
            • 14. 剑指Offer: 序列化二叉树
            • 15. 剑指Offer: 二叉搜索树的第k个结点
            • 16. LeetCode:二叉树的直径
            • 17. LeetCode:二叉树的中序遍历 (非递归)
            • 18. LeetCode:二叉树的前序及后序遍历 (非递归)
            • 19. LeetCode:二叉树的遍历(递归)
            • 20. 二叉树的遍历总结
          • 6. 图
          • 7. 排序
            • 1. 数据结构与算法:快速排序详解
            • 2. 剑指Offer:找出最小的k个数字
            • 3. 数据结构与算法:查找第k大的数字
            • 4. 数据结构与算法:归并排序
            • 5. 数据结构与算法:堆排序
            • 6. 数据结构与算法:冒泡排序
            • 7. 面试:分别利用最大堆和快速排序找出k个最大数
          • 8. 查找
            • 1. 剑指Offer:二维数组中的查找
            • 2. 剑指Offer: 数字在排序数组中出现的次数
            • 3. 数据结构与算法:折半查找
          • 9. 贪心算法
          • 10. 分治思想
          • 11. 动态规划 (复习次数:1)
            • 1. 剑指Offer:连续子数组的最大和
            • 2. 剑指Offer:剪绳子
            • 3. LeetCode:买卖股票的最佳时机
            • 4. LeetCode:[最长回文子串](https://leetcode-cn.com/problems/longest-palindromic-substring/)
            • 5. 搞定算法:机器人走路问题
            • 6. 矩阵最小路径问题
            • **7. 最长连续子串**
          • 12. 斐波那契数列
            • 1. 剑指Offer: 斐波那契数列
            • 2. 剑指Offer: 跳台阶
          • 12. 滑动窗口
            • 1. 剑指Offer: 和为S的连续正数序列
            • 2. 剑指offer: 和为S的两个数字
            • 3. 剑指Offer: 左旋转字符串
            • 5. 剑指Offer: 滑动窗口的最大值
          • 13. 位运算
            • 1. 剑指Offer: 二进制中1的个数
            • 2. 剑指Offer:数值的整数次方
            • 3. 剑指Offer: 求1+2+3+...+n
            • 4. 剑指Offer: 不用加减乘除做加法
            • 5. 剑指Offer: 数组中只出现一次的数字
          • 14. 洗牌
            • 1. 使用混沌序列打乱数字
            • 2. 50张扑克中随机抽两张牌
          • 15. 递归
            • 1. 如何理解递归?
            • 2. 递归函数模板
            • 3. 剑指Offer:机器人的运动范围
          • 16. 面试算法总结
            • 1. 合并区间
            • 2. 相同数组内数字求和
            • 3. 有序数组去重
            • [4. LRU缓存机制](https://leetcode-cn.com/problems/lru-cache/)
          • [常用类及方法]
            • 1. HashMap
            • 2. string
            • 3. LinkedList
            • 4. stack
            • 5. ArrayList
            • **6.while 和for的区别**
            • 7. HashSet常用方法
            • 8. HashMap不能使用基本数据类型作为key
            • 9. HashSet的底层是HashMap,但map需要key、value两个值,为什么set只需存放一个值
            • 10. Java中HashMap遍历的四种方式
            • 11. ASCII码
            • 12. java for循环的几种写法
            • 13 ArrayList和LinkedList遍历方式及性能对比分析
            • 14.queue
            • 15.一维数组和二维数组的结构
            • 16.一维数组和二维数组的结构
    cs
    下一篇:没有了