赞
踩
本文主要内容:
相互之间存在一种或多种关系的数据元素的集合。
数据结构的具备类型包括2种:逻辑结构、物理结构。
主要包括:
在后面的章节中,我会详细介绍上述数据结构。
解决特定问题的求解步骤(在计算机中表现为多个指令 = 多个步骤操作)。
算法的设计需考虑以下性能要求:
时间复杂度、空间复杂度介绍如下:
每类数据结构都会有对应的算法应用场景,具体如下:
在下面的章节中,我会:
具体请看文章:算法总结:这是一份全面&详细的排序算法学习指南
对于不同的查找需求场景,会采用不同的查找类型,最终采用的查找方式(查找算法)也有所不同,具体如下
具体请看文章:Carson带你学数据结构:图文详解 - 动态查找、静态查找、散列查找
线性表主要包括:数组、链表、栈与队列
概念 | 说明 |
---|---|
数组长度 | 存放线性表的空间长度(固定不变) |
线性表长度 | 存放线性表数据元素的长度(动态变化) |
地址 | 存储单元的编号 |
数组下标 | 第 i 个元素 = 数组下标第 i-1 的位置 |
具体请看文章:Carson带你学数据结构:线性表-数组
典型应用1:寻找出现特定次数的数字
典型应用2:寻找符合特定条件的数字
典型应用3:不同类型数组的查找
典型应用4:数组内元素的排列组合
具体请看文章:Carson带你学数据结构:链表
典型应用1:寻找链表特定节点
典型应用2:复制 & 删除链表
典型应用3:翻转、合并 & 打印链表
具体请看文章:Carson带你学数据结构:图文解析特殊的线性表 - 栈 & 队列
典型应用1:互相转换
典型应用2:求最大、最小值
包括:双亲表示法、孩子表示法、孩子兄弟表示法,具体介绍如下图
具体请看文章:Carson带你学数据结构:手把手教你学习-树
主要应用是二叉树,所以下面主要介绍二叉树算法的应用
典型应用1:基础树遍历算法
典型应用2:遍历应用
典型应用3:二叉树结构判断
典型应用4:二叉树查找
典型应用5:二叉树类型变式
包括:顺序存储结构 & 链式存储结构
具体请看文章:Carson带你学数据结构:这是一份全面 & 详细的”串“讲解指南
典型应用1:字符串转换
典型应用2:字符查找
典型应用3:字符串的排列组合
典型应用4:字符串翻转
典型应用5:字符串匹配判断
具体请看文章:Carson带你学数据结构:手把手带你了解 ”图“ 所有知识!(含DFS、BFS)
典型应用1:基础遍历
典型应用2:最小生成树
典型应用3:最短路径
至此,关于常用的数据结构及典型算法解析已经讲解完毕。
本文全面解析了数据结构及其对应常见算法,核心内容都已经记录在Github上:
https://github.com/Carson-Ho/AlgorithmLearning,感谢各位关注点赞。
博客链接:https://carsonho.blog.csdn.net/
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。