# basic-algorithm
## 基础排序
1. [选择排序](https://github.com/l81893521/basic-algorithm/blob/master/src/main/java/will/zhang/basic/ASelectSort/SelectionSort.java)
2. [使用泛型编写算法](https://github.com/l81893521/basic-algorithm/blob/master/src/main/java/will/zhang/basic/BSelectSortUsingComparable/SelectionSort.java)
3. [测试算法性能](https://github.com/l81893521/basic-algorithm/blob/master/src/main/java/will/zhang/basic/DSelectionSortDetectPerformance/SelectionSort.java)
4. [插入排序](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/basic/EInsertionSort)
5. [插入排序改进](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/basic/FInsertionSort)
## 高级排序算法
1. [归并排序](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/advance/AMergeSort)
2. [归并排序改进](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/advance/BMergeSortAdvance)
3. [归并排序自底向上](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/advance/CMergeSortBottomUp)
4. [快速排序](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/advance/DQuickSort)
5. [随机化快速排序](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/advance/EQuickSortDealWithNearOrderedArray)
6. [双路快速排序](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/advance/FQuickSort2Ways)
7. [三路快速排序](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/advance/GQuickSort3Ways)
## 堆和堆排序
1. [堆的基本存储](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/heap/AMaxHeapClassBasic)
2. [ShiftUp](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/heap/BShiftUp)
3. [ShiftDown](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/heap/CShiftDown)
4. [基础堆排序和Heapify](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/heap/DHeapify)
5. [优化的堆排序](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/heap/EHeapSort)
6. [索引堆(IndexHeap)](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/heap/FIndexHeap)
7. [索引堆的优化](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/heap/GIndexHeapAdvance)
## 二分搜索树
1. [二分查找法(Binary Search)](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/binarySearchTree/ABinarySearch)
2. [二分搜索树基础](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/binarySearchTree/BBinarySearchTreeBasic)
3. [二分搜索树的节点插入](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/binarySearchTree/CBinarySearchTreeInsert)
4. [二分搜索树的查找](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/binarySearchTree/DBinarySearchTreeSearch)
5. [二分搜索树的遍历(深度优先遍历)](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/binarySearchTree/EBinarySearchTreeTraverse)
6. [层序遍历(广度优先遍历)](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/binarySearchTree/FBinarySearchTreeLevelTraverse)
7. [删除最大值, 最小值](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/binarySearchTree/GBinarySearchTreeRemoveMinAndMax)
8. [二分搜索树节点的删除](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/binarySearchTree/HBinarySearchTreeRemove)
9. [floor和ceil的实现](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/binarySearchTree/IBinarySearchTreeFloorCeil)
## 并查集
1. [Quick Find](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/unionFind/AQuickFind)
2. [Quick Union](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/unionFind/BQuickUnion)
3. [基于size的优化](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/unionFind/COptimizeBySize)
4. [基于rank的优化](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/unionFind/DOptimizeByRank)
5. [路径压缩(Path Compression)](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/unionFind/EPathCompression)
## 图的基础
1. [图的表示(稀疏图和稠密图), 使用邻接表和邻接矩阵](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/unionFind/EPathCompression)
2. [相邻节点迭代器](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/graphBasic/BVertexAdjacentIterator)
3. [图的算法框架](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/graphBasic/CReadGraph)
4. [深度优先遍历和联通分量](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/graphBasic/DDfsAndComponents)
5. [寻路](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/graphBasic/EFindingAPath)
6. [广度优先遍历和最短路径](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/graphBasic/FBFSAndShortestPath)
## 最小生成树
1. [有权图](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/minimumSpanTree/AWeightedGraph)
2. [Prim算法的第一个实现(Lazy Prim)](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/minimumSpanTree/BLazyPrim)
3. [Prim算法的优化](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/minimumSpanTree/COptimizedPrim)
4. [Kruskal算法](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/minimumSpanTree/DKruskalAlgorithm)
## 最短路径
1. [Dijkstra算法](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/shortestPath/ADijkstra)
2. [Bellman-Ford算法](https://github.com/l81893521/basic-algorithm/tree/master/src/main/java/will/zhang/shortestPath/BBellmanFord)
没有合适的资源?快使用搜索试试~ 我知道了~
基础排序, 高级排序, 堆, 二分搜索树, 并查集, 图以及图相关算法知识总结
共178个文件
java:162个
txt:11个
xml:1个
需积分: 2 0 下载量 23 浏览量
2024-04-12
10:25:20
上传
评论
收藏 1.23MB ZIP 举报
温馨提示
basic-algorithm 基础排序 选择排序 使用泛型编写算法 测试算法性能 插入排序 插入排序改进 高级排序算法 归并排序 归并排序改进 归并排序自底向上 快速排序 随机化快速排序 双路快速排序 三路快速排序 堆和堆排序 堆的基本存储 ShiftUp ShiftDown 基础堆排序和Heapify 优化的堆排序 索引堆(IndexHeap) 索引堆的优化 二分搜索树 二分查找法(Binary Search) 二分搜索树基础 二分搜索树的节点插入 二分搜索树的查找 二分搜索树的遍历(深度优先遍历) 层序遍历(广度优先遍历) 删除最大值, 最小值 二分搜索树节点的删除 floor和ceil的实现 并查集 Quick Find Quick Union 基于size的优化 基于rank的优化 路径压缩(Path Compression) 图的基础 图的表示(稀疏图和稠密图), 使用邻接表和邻接矩阵 相邻节点迭代器 图的算法框架 深度优先遍历和联通分量 寻路 广度优先遍历和最短路径 最小生成树 有权图 Prim算法的第一个实现(Lazy Prim) Prim算法的优化 Kruskal算法
资源推荐
资源详情
资源评论
收起资源包目录
基础排序, 高级排序, 堆, 二分搜索树, 并查集, 图以及图相关算法知识总结 (178个子文件)
.gitignore 23B
BST.java 13KB
BST.java 10KB
BST.java 8KB
BST.java 6KB
Main.java 6KB
MaxIndexHeap.java 6KB
BST.java 6KB
IndexMinHeap.java 5KB
IndexMinHeap.java 5KB
IndexMinHeap.java 5KB
MaxIndexHeap.java 5KB
QuickSort.java 5KB
QuickSort.java 5KB
BellmanFord.java 5KB
BST.java 5KB
Main.java 4KB
UnionFindTestHelper.java 4KB
Dijkstra.java 4KB
PrintableMaxHeap.java 4KB
MergeSort.java 4KB
MergeSortBU.java 4KB
UnionFindTestHelper.java 4KB
PrimMST.java 3KB
PrimMST.java 3KB
QuickSort.java 3KB
SortTestHelper.java 3KB
MaxHeap.java 3KB
SST.java 3KB
ShortestPath.java 3KB
MaxHeap.java 3KB
MinHeap.java 3KB
MinHeap.java 3KB
UnionFindTestHelper.java 3KB
MinHeap.java 3KB
MergeSort.java 3KB
KruskalMST.java 3KB
DenseWeightedGraph.java 3KB
QuickSort.java 3KB
DenseWeightedGraph.java 3KB
DenseWeightedGraph.java 3KB
DenseWeightedGraph.java 3KB
DenseWeightedGraph.java 3KB
DenseWeightedGraph.java 3KB
SparseWeightedGraph.java 3KB
SparseWeightedGraph.java 3KB
SparseWeightedGraph.java 3KB
SparseWeightedGraph.java 3KB
SparseWeightedGraph.java 3KB
SparseWeightedGraph.java 3KB
InversionCount.java 3KB
Main.java 3KB
HeapSort3.java 3KB
Path.java 2KB
SparseGraph.java 2KB
Path.java 2KB
SparseGraph.java 2KB
SparseGraph.java 2KB
SparseGraph.java 2KB
Main.java 2KB
UnionFind.java 2KB
UnionFind5.java 2KB
Selection.java 2KB
LazyPrimMST.java 2KB
LazyPrimMST.java 2KB
LazyPrimMST.java 2KB
ReadWeightedGraph.java 2KB
ReadWeightedGraph.java 2KB
ReadWeightedGraph.java 2KB
ReadWeightedGraph.java 2KB
ReadWeightedGraph.java 2KB
ReadWeightedGraph.java 2KB
DenseGraph.java 2KB
DenseGraph.java 2KB
DenseGraph.java 2KB
DenseGraph.java 2KB
FileOperations.java 2KB
ReadGraph.java 2KB
ReadGraph.java 2KB
ReadGraph.java 2KB
ReadGraph.java 2KB
UnionFind4.java 2KB
UnionFind4.java 2KB
SparseGraph.java 2KB
BST.java 2KB
DenseGraph.java 2KB
SparseGraph.java 2KB
MaxHeap.java 2KB
InsertionSort.java 2KB
UnionFindTestHelper.java 2KB
UnionFind3.java 2KB
UnionFind3.java 2KB
UnionFind3.java 2KB
Main.java 2KB
SelectionSort.java 2KB
Components.java 2KB
DenseGraph.java 2KB
BubbleSort2.java 2KB
BinarySearch2.java 1KB
Edge.java 1KB
共 178 条
- 1
- 2
资源评论
进击的代码家
- 粉丝: 2203
- 资源: 204
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于MIC+NE555光敏电阻的声光控电路Multisim仿真原理图
- python tkinter-08-盒子模型.ev4.rar
- Doozy UI Manager 2023
- 基于matlab实现夜间车牌识别程序(1).rar
- 基于matlab实现无线传感器网络无需测距定位算法matlab源代码 包括apit,dv-hop,amorphous在内的共7个
- 基于python的yolov5实现的旋转目标检测
- 基于matlab实现无线传感器网络 CAB定位仿真程序 这是无线传感器节点定位CAB算法的仿真程序,由matlab完成.rar
- 基于matlab实现图像处理,本程序使用背景差分法对来往车辆进行检测和跟踪.rar
- 基于matlab实现视频监控中车型识别代码,自己写的,希望和大家多多交流.rar
- springcodespringcodespringcodespringcode
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功