/algo

数据结构与算法

Primary LanguageGo

GitHub stars GitHub forks

学习算法,终生学习.

算法本质是使程序片段执行得到一种最优最快的方法, 从而实现计算量最少最优,CPU占用最低,响应最快的结果.

图解算法

https://visualgo.net/

数据结构图谱

算法好坏基本判断

  1. 时间复杂度,使用大O表示法.如O(1), O(n), O(LogN)
  2. 空间复杂度.

如何分析算法题

  1. 找到数据之间的规律,得出通用公式
  2. 将大问题不断缩小范围,得到一个最小范围解
  3. 借用空间换时间.

蓝蝙蝠算法系列

  1. 数组转换成最小值

排序

  1. 冒泡排序
  2. 插入排序
  3. 选择排序
  4. 希尔排序
  5. 归并排序
  6. 快速排序

排序的总结

列表

  1. 斐波那契数列 chan实现
  2. 二分法实现 多种写法
  3. 双链表实现 并发安全
  4. FIFO先进先出算法实现 双链表实现
  5. LRU最少最近算法实现 双链表实现
  6. LFU最不常用算法实现 双链表实现

  1. 基本定义与概念
  2. 二叉树基本操作
  3. 哈夫曼树

贪心**

  1. 非负整数a,删除k个元素,求最大值

动态规划

1 最长公共子串 1 最长公共子序列

递归题

  1. 顺时针打印矩阵

各种算法已代码实现

  1. 极客时间算法: https://github.com/wangzheng0822/algo

Common Data Structure Operations

  1. http://www.bigocheatsheet.com/

时间复杂度

学习笔记

  1. 王卓老师的<<数据结构与算法>>
  2. 脑图笔记
  3. 代码实现
  4. 仅供同学们参考