可视化的数据结构和算法 陈皓
2011-07-26 08:36 youxin 阅读(1581) 评论(0) 编辑 收藏 举报还记得之前发布过的那个关于可视化排序的文章吗?在网上又看到了一个旧金山大学David Galles做的各种可视化的数据结构和基本算法的主页,网址在这里,大家可以看看。我把这个页面的目录列在下面并翻译了一下,大家可以直接点击了。
不知道国内的教育有没有相关的教学课件,至少在我大学的时候是没有的。
基础
- Stack栈: 数组实现
- Stack栈: 链表实现
- Queues队列: 数组实现
- Queues队列: 链表实现
- Lists列表: 数组实现 ( java 版演示)
- Lists列表: 链表实现 ( java 版演示)
索引
- Binary Search Trees 二叉检索树
- AVL Trees (平衡二叉检索树)
- Red-Black Trees 红黑树 ( flash 版本演示)
- Open Hash Tables 开放哈希表(Closed Addressing 链地址法)
- Closed Hash Tables 闭合哈希表 (Open Addressing 开放定址法)
- Closed Hash Tables, using buckets 使用桶
- B Trees B树
- B+ Trees B+树
- Comparison Sorting 比较式排序
- Bubble Sort 冒泡排序
- Selection Sort 选择排序
- Insertion Sort 插入排序
- Shell Sort 希尔排序
- Merge Sort 归并排序
- Quck Sort 快速排序
- Bucket Sort 桶排序
- Counting Sort 计数排序
- Radix Sort 基数排序
堆数据结构
- Heaps 堆
- Binomial Queues 二项队列
图 算法
- Breadth-First Search 广度优先搜索
- Depth-First Search 深度优先搜索
- Connected Components 连通性
- Dijkstra’s Shortest Path Dijkstra最短路径
- Prim’s Minimum Cost Spanning Tree 最小生成树
- Topological Sort 拓扑排序 ( flash 版本演示 java 版本演示)
- Floyd-Warshall 算法(解决任意两点间的最短路径的一种算法) (flash 版本演示 java 版本演示)
- 基于Kruskal算法的最小生成树的构建 ( flash 版本演示 java 版本演示)
动态编程
- 计算 Fibonacci 数 ( java 版本演示)
其它…
- Disjoint Sets (MIT算法公开课中有一课讨论的是这个,见网易公开课)
- Huffman Coding 哈夫曼编码 ( java 版本演示)
- http://coolshell.cn/articles/4671.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通