数据结构+算法 学习计划与资源
学了很多杂乱的技术,继续成长 渐感吃力,重新学习数据结构 与 算法.
计划:
1.严蔚敏《数据结构》《大话数据结构》,每天一个小例子。
2.采用C++ 或者C 。尽量用C++实现,以辅助理解面向对象编程思想。
3.与同学每天练习、讨论一个数据结构问题。编写、并分析一段代码。
4.最最重要的是坚持下来。
5.将代码和领悟写在博客上。
---------
1、每天一个小例子,具体的我们提前一天确定好;
2、我们各自实现代码,然后交互看一下(确保代码可读性及本互学习),必要时讨论;
3、每完成一块知识,对比总结一下。
---------
注意:树、图、排序 是 以前学习的时候遗留的难点。在这个时候不能放弃。最重要的是坚持。
学习曲线:
1.链表
线性表的顺序存储结构
线性表的链式存储结构
单链表结构与顺序存储结构优缺点
静态链表
循环链表
双向链表
2.栈
两栈共享空间
栈的链式存储结构及实现
栈的应用——递归 --斐波那契数列实现.----- 递归定义....
栈的应用——四则运算表达式求值,后缀,后缀转换为 中缀
3.队列
循环队列
4.串
朴素的模式匹配算法
KMP模式匹配算法
5.遍历二叉树
前序遍历 中序遍历 后续遍历
线索二叉树
树、森林与二叉树的转换
二叉树转换为树.
赫夫曼树----
赫夫曼编码.
6. 图
邻接矩阵、邻接表、邻接多重表、十字链表、
深度优先搜索、广度优先搜索
最小生成树: 普里姆(Prim)算法.. 克鲁斯卡尔(Kruskal)算法.......
最短路径 : 迪杰斯特拉(Dijkstra)算法.--- 弗洛伊德(Floyd)算法
拓扑排序
最短路径算法
7.查找
顺序查找
二分
线性索引:稠密索引.. 分块索引.....倒排索引....
平衡二叉树
二叉排序树
多路查找(B树)
散列查找
散列函数构造:5种方式
散列冲突方法
8.排序
排序的基本概念与分类·
冒泡排序
简单选择
插入
希尔
堆排序
归并
快速
学习资源:
1.data structure visualization:http://www.cs.usfca.edu/~galles/visualization/Algorithms.html
2.http://www.cnblogs.com/bourbon/archive/2011/08/26/2152158.html 排序算法
3.http://www.cnblogs.com/bourbon/archive/2011/08/23/2151044.html 动态规划
4.参考代码:https://files.cnblogs.com/cj723/PlayWithDataStructureSourceCode.zip
demo list:
├─第3章线性表
│ 01线性表顺序存储_List.c
│ 02线性表链式存储_LinkList.c
│ 03静态链表_StaticLinkList.c
│
├─第4章栈与队列
│ 01顺序栈_Stack.c
│ 02两栈共享空间_DoubleStack.c
│ 03链栈_LinkStack.c
│ 04斐波那契函数_Fibonacci.c
│ 05顺序队列_Queue.c
│ 06链队列_LinkQueue.c
│
├─第5章串
│ 01串_String.c
│ 02模式匹配_KMP.c
│
├─第6章树
│ 01二叉树顺序结构实现_BiTreeArray.c
│ 02二叉树链式结构实现_BiTreeLink.c
│ 03线索二叉树_ThreadBinaryTree.c
│
├─第7章图
│ 01邻接矩阵创建_CreateMGraph.c
│ 02邻接表创建_CreateALGraph.c
│ 03邻接矩阵深度和广度遍历DFS_BFS.c
│ 04邻接表深度和广度遍历DFS_BFS.c
│ 05最小生成树_Prim.c
│ 06最小生成树_Kruskal.c
│ 07最短路径_Dijkstra.c
│ 08最短路径_Floyd.c
│ 09拓扑排序_TopologicalSort.c
│ 10关键路径_CriticalPath.c
│
├─第8章查找
│ 01静态查找_Search.c
│ 02二叉排序树_BinarySortTree.c
│ 03平衡二叉树_AVLTree.c
│ 04B树_BTree.c
│ 05散列表_HashTable.c
│
└─第9章排序
|
---- 01排序_Sort.c
5.硬盘资源
X:\编程基础\数据结构
C++数据结构4.zip
C++程序test_prog
C++程序test_prog.7z
大话数据结构SourceCode.zip
数据结构_ruby_programs.zip
数据结构与算法ppt
数据结构与算法ppt.rar
欧阳浩 项目源文件 及 ppt .rar
出处: http://www.cnblogs.com/todototry/
关注语言: python、javascript(node.js)、objective-C、java、R、C++
兴趣点: 互联网、大数据技术、大数据IO瓶颈、col-oriented DB、Key-Value DB、数据挖掘、模式识别、deep learning、开发与成本管理
产品:
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。