本项目是使用Java编程语言进行数据结构与算法的学习,学习的内容包括:抽象数据类型的角度讨论三大数据结构,即线性结构、层次结构和网状结构的逻辑特性、存储表示、基本操作及其应用,还有查找和排序的各种实现方法和综合分析比较
有一定java语言基础,想要了解ArrayList、LinkedList等集合类底层原理。并且想要学习数据结构和算法的读者
Java
环境 | 版本 | 备注 |
|---|---|---|
Jdk | 1.7+ | idea / eclipse |
• 数据结构的基本原理
- 逻辑结构
- 物理结构
• 算法入门
- 大数字运算,冒泡排序,插入排序,二分查找法等一些简单算法的实现
• 链式存储的原理及实现
- 链表的创建,新增节点、修改节点、插入节点、删除和变量节点
- 实现单向链表,双向链表和循环链表
• 集合的实现原理及代码编写
- 使用代码编写自己的ArrayList类,掌握ArrayList的实现原理
- 使用链表实现自己的LinkedList类,掌握LinkedList的实现原理
- 使用链表或数组实现栈集合
- 使用链表或数组实现队列集合
- 分析各种集合的优缺点及应用场景
- 利用各种集合编写四则混合运算的实战项目
• 递归算法
- 递归的实现及优缺点
- 使用递归计算斐波拉契数列、文件夹遍历及复制
- 递归算法的高级应用:插入排序、八皇后、汉罗塔
• 二叉树
- 使用数组和链表方式实现二叉树
- 使用二叉树实现堆排序
- 排序二叉树的实现
- 二叉树的多种遍历方式
项目截屏
