DS_School1
加监视哨的顺序查找
return i;
顺序表上的顺序查找的性能分析
顺序表 平均查找长度
n+1/2
O(n)
单链表上的 顺序查找
顺序查找特点
算法简单
对存储没有太大要求
平均查找长度较大, 效率低,
当n很大时, 不宜采用顺序查找
(n+1)/2
折半查找
二分查找
特点(要求)
1, 数据必须有序排列
2, 存储结构: 顺序存储
折半查找, 还是 从1 开始存元素, 为了方便
下一章 排序, 也是从1开始
归并排序
分隔
for(i =1; 2 * len - 1 <= len; i += 2*len)
Merge(L, i, i + len; i + 2 * (len - 1))
退出循环的时候, 就不需要 归并了
一组, 就不贵并了
需要保证 2组
1, 非递归方法
2, 还可以 用 递归
一直分裂
不能再分裂之后, 归并
void MergeSort(SeqList* L) {
}
写出每一趟结果
稳定的
二路归并排序 是一种 稳定的排序方法
基数排序
000000000000000000000000000
散列表查找
栈查找
树
线性结构的特点
1, 有且仅有1个, 前驱结点
2, 有且仅有1个, 表尾结点
树形结构特点
1, 有且仅有1个, 根结点Root
2, 有多个叶子结点
3, 中间, 一个前驱, 一个后继
树的定义时递归的
树的存储结构
1, 双亲表示法
2, 孩子表示法
2.1, 双亲_孩子表示法
3, 孩子_兄弟表示法
双亲表示法
用
data域, 存放结点的信息
parent域, 存放该结点唯一的双亲结点的位置(数组下标)
特点:
利用了根节点之外的每个结点只有唯一双亲的性质, 求结点的双亲或祖先很容易,
但求结点的孩子, 需要遍历整个数组
图
邻接矩阵
无向图
1, nxn
2, 沿对角线对称
3, 邻接矩阵, i, j, 可以求该临电 的 度
有向图
删除1, 相关点的边
特点
统计i行, 出度
统计j行, 入度
稀疏矩阵, 浪费存储空间
无穷, 求最短路径
图的存储结构
1, 顺序, 邻接矩阵
2, 邻接表(),类似树的孩子表示法
树中叫
顶点结点, 孩子结点
图中叫
顶点结点(顶点集合), 边结点,
图G, n个结点, e条边,
无向图
多少个顶点结点, n个
边结点, 2e
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律