算法 动画算法 算法动画 动画原理——总体概览图

本文章目的是收录所有数据结构和算法。

动画算法网站

动画算法一

(传送门) https://visualgo.net/en

动画算法二

(传送门) https://www.cs.usfca.edu/~galles/visualization/Algorithms.html

动画算法三

本人开发,逐步优化,欢迎提修改意见。
(传送门)http://www.donghuasuanfa.com/

概览表

数据结构

线性结构

  1. 队列 (动画演示)
  2. 栈 (动画演示)
  3. 数组
  4. 链表
  5. 跳跃表(skip list)(动画演示)

树状结构

  1. 二叉树 (文章) (动画演示)
  2. 平衡二叉树 (动画演示)
  3. 红黑树 (动画演示)
  4. 哈夫曼树
  5. Btree
  6. B+tree
  7. B*Tree
  8. 字典树(Trie树、前缀树)

图结构

算法

排序算法

图片来自 维基百科

比较排序

下图为比较排序,比较排序的时间复杂度最优为O(N*log2N) 。
在这里插入图片描述

非比较排序

下图为非比较排序,且有些算法突破了O(N*log2N) 。
在这里插入图片描述

名称时间复杂度(最差)时间复杂度(平均)时间复杂度(最优)空间复杂度稳定性类别
冒泡排序O(N2)O(N2)O(N)O(1)稳定交换排序
鸡尾酒排序O(N2)O(N2)O(N)O(1)稳定交换排序
选择排序O(N2)O(N2)O(N)O(1)不稳定交换排序
插入排序O(N2)O(N2)O(N)O(1)稳定插入排序
希尔排序O(N2)O(N4/3)O(N)O(1)不稳定交换排序
快速排序O(N*log2N)O(N*log2N)O(N*log2N)O(log2N)不稳定交换排序
归并排序O(N*log2N)O(N*log2N)O(N*log2N)O(N)稳定归并排序
堆排序O(N*log2N)O(N*log2N)O(N*log2N)O(N)稳定选择排序
计数排序O(N+M)O(N+M)O(N+M)O(N+M)稳定线性排序
基数排序O(K*(N+M))O(N+M)O(N+M)O(N+M)稳定线性排序
桶排序O(N+M+M*单桶排序时间)O(N+M+M*单桶排序时间)O(N+M+M*单桶排序时间)O(N+M)稳定线性排序
  1. 冒泡排序. (文章) (动画演示)
  2. 鸡尾酒排序. (动画演示)
  3. 选择排序. (文章) (动画演示)
  4. 插入排序. (文章)(动画演示)
  5. 希尔排序. (动画演示)
  6. 快速排序. (文章)(动画演示)
  7. 归并排序. (文章) (动画演示)
  8. 堆排序. (文章) (动画演示)
  9. 计数排序. (动画演示)
  10. 基数排序. (动画演示)
  11. 桶排序. (动画演示)

图算法

图遍历算法

1.广度优先遍历算法(动画演示)(文章)
2.深度优先遍历算法(动画演示)

图最短路径算法

1.Dijkstra(动画演示)

字符串匹配算法

  1. 朴素算法或者暴力算法
  2. Rabin-Karp 算法
  3. 有限自动机算法(Finite Automation)
  4. Knuth-Morris-Pratt 算法(即 KMP Algorithm)
  5. Boyer-Moore 算法(文章)
  6. Simon 算法
  7. Colussi 算法
  8. Galil-Giancarlo 算法
  9. Apostolico-Crochemore 算法
  10. Horspool 算法
  11. Sunday 算法

加密安全算法

对称加密
  1. 对称加密简介
  2. DES
  3. 3DES
  4. AES(文章)
非对称加密
  1. 非对称加密简介
  2. RSA

垃圾回收算法

垃圾回收算法与垃圾回收器不能混为一谈。垃圾回收算法被诸多语音使用。常见的垃圾回收算法如下所示:

  1. 标记清除
  2. 标记压缩
    a. Lisp2算法. Donald E. Knuth
    b. Two-Finger算法. Robert A. Saunders
    c. 表格算法. B. K. Haddon和W. M. Waite
    d. ImmixGC算法 Stephen M. Blackburn和Kathryn S. McKinley
  3. 复制
    a.深度优先. Fenichel和Yochelson
    b.广度优先. Cheney
    c. 近似深度优先搜索法. Paul R. Wilson、Michael S. Lam和Thomas G. Moher
  4. 引用计数算法

过期算法

1.LFU和LRU (动画演示)(文章)

机器学习

有监督学习

1.全链接神经网络(DNN) (动画演示)
2.卷积神经网络(CNN)
3. 循环神经网络(RNN)

无监督学习

聚类算法
  1. k-means (文章) (动画演示)

分布式

  1. 一致性hash(文章) (动画演示)

编程语言,开源框架

JAVA

  1. 线程池. (文章) (动画演示)

Redis

  1. 哨兵模式(动画演示)
  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值