# algorithms-and-data-structures
目录
```
└─Outline
├─algorithms
│ ├─search
│ │ ├─binarysearch
│ │ └─linearsearch
│ └─sort
│ ├─bubblesort
│ ├─countingsort
│ ├─insertionsort
│ ├─mergesort
│ ├─quicksort
│ ├─selectionsort
│ └─shellsort
└─datastructures
├─array
├─avltree
├─binarysearchtree
├─hashtable
├─linkedlist
├─map
├─maxheap
├─queue
├─redblacktree
├─segmenttree
├─set
├─stack
├─trie
└─unionfind
```
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
算法与数据结构涵盖了以下主要内容: 数据结构(Data Structures): 逻辑结构:描述数据元素之间的逻辑关系,如线性结构(如数组、链表)、树形结构(如二叉树、堆、B树)、图结构(有向图、无向图等)以及集合和队列等抽象数据类型。 存储结构(物理结构):描述数据在计算机中如何具体存储。例如,数组的连续存储,链表的动态分配节点,树和图的邻接矩阵或邻接表表示等。 基本操作:针对每种数据结构,定义了一系列基本的操作,包括但不限于插入、删除、查找、更新、遍历等,并分析这些操作的时间复杂度和空间复杂度。 算法: 算法设计:研究如何将解决问题的步骤形式化为一系列指令,使得计算机可以执行以求解问题。 算法特性:包括输入、输出、有穷性、确定性和可行性。即一个有效的算法必须能在有限步骤内结束,并且对于给定的输入产生唯一的确定输出。 算法分类:排序算法(如冒泡排序、快速排序、归并排序),查找算法(如顺序查找、二分查找、哈希查找),图论算法(如Dijkstra最短路径算法、Floyd-Warshall算法、Prim最小生成树算法),动态规划,贪心算法,回溯法,分支限界法等。 算法分析:通过数学方法分析算法的时间复杂度(运行时间随数据规模增长的速度)和空间复杂度(所需内存大小)来评估其效率。 学习算法与数据结构不仅有助于理解程序的内部工作原理,更能帮助开发人员编写出高效、稳定和易于维护的软件系统。
资源推荐
资源详情
资源评论
收起资源包目录
Java实现常用数据结构和算法.zip (64个子文件)
open_suanfayushujujiegouxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxcxxxxxxxxxxxxcxvcvcv
pom.xml 907B
src
main
java
com
kidand
algorithms
and
data
structures
algorithms
sort
mergesort
MergeSortBottomUp.java 3KB
plus
MergeSortPlus.java 4KB
test
TestMergeSort.java 2KB
leetcode
ReversePairs.java 3KB
MergeSort.java 3KB
insertionsort
test
ContrastInsertionWithSelection.java 2KB
TestInsertionSort.java 2KB
InsertionSort.java 3KB
shellsort
test
TestShellSort.java 2KB
ShellSort.java 2KB
selectionsort
SelectionSort.java 2KB
test
TestSelectionSort.java 1KB
Student.java 2KB
bubblesort
test
TestBubbleSort.java 2KB
BubbleSort.java 4KB
countingsort
CountingSort.java 2KB
test
testCountingSort.java 3KB
Student.java 1KB
leetcode
SortColors.java 2KB
quicksort
QuickSortTwoWays.java 3KB
QuickSortThreeWays.java 3KB
QuickSort.java 3KB
test
TestQuickSort.java 3KB
leetcode
SortColors.java 2KB
FindKthLargest.java 2KB
GetLeastNumbers.java 2KB
search
linearsearch
LinearSearch.java 2KB
test
TestLinearSearch.java 2KB
Student.java 1KB
binarysearch
BinarySearch.java 8KB
test
TestUpperFloor.java 1KB
TestLower.java 1KB
TestLowerCeil.java 1KB
TestLowerFloor.java 1KB
TestUpperCeil.java 1KB
TestUpper.java 1KB
leetcode
TestBinarySearchRecursion.java 2KB
MinEatingSpeed.java 2KB
ShipWithinDays.java 2KB
FindKthLargest.java 2KB
TestBinarySearch.java 1KB
datastructures
hashtable
HashTable.java 4KB
test
TestHashTable.java 4KB
Student.java 2KB
TestHashCode.java 2KB
leetcode
FirstUniqChar.java 1KB
avltree
test
CompareBSTAndAVL.java 3KB
TestAVLtree.java 2KB
AVLTree.java 11KB
linkedlist
LinkedList.java 6KB
leetcode
RemoveLinkedListElement.java 2KB
ListNode.java 2KB
binarysearchtree
BinarySearchTree.java 10KB
test
TestRemoveNode.java 3KB
TestBinarySearchTree.java 2KB
BST.java 6KB
array
Array.java 7KB
test
TestArrray.java 2KB
LICENSE 11KB
pride-and-prejudice.txt 695KB
.gitignore 516B
README.md 750B
a-tale-of-two-cities.txt 770KB
共 64 条
- 1
资源评论
极致人生-010
- 粉丝: 4436
- 资源: 3089
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 世界名企最完美的人才培训篇(AAAAA).doc
- 着眼长处的思维方法.doc
- 现代企业人力资源总监、职业培训师、职业经理人必看培训技巧大全.doc
- 学习资料-推荐:2006年企业年度培训方案实例(DOC_8).doc
- 最经典的培训案例.doc
- 中层主管的新型管理方式.doc
- 看世界名企怎样培养人才.docx
- 复旦大学张奇:2023年大规模语言模型中的多语言对齐与知识分区研究
- 非常好用的,U盘 启动盘制作 工作, 将U盘 分成 2个区,一个作为 启动盘,另外 一个正常存储文件,或iso
- 成功领导的六种思维方法.doc
- 成功的项目管理.doc
- 电话销售技巧.doc
- 岗位说明书的编写与应用.doc
- 非人力资源经理的人力资源管理.doc
- 高层经理人的八项修炼.doc
- 公司理财(MBA全景教程之六).doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功