【8.1】排序

前言数据结构的最后一部分了,排序也是在前面的数据结构的基础上来解决实际问题的。排序排序算法可以根据数据量的大小分为:内部排序:数据都在内存中外部排序:数据太多,无法全部存放在内存中关于下述的各种排序算法是基于如下的方法结构来实现的:#include <stdio.h>#include &


【7.1】查找

前言查找表:是一种数据集合(记录),可以理解为你要从哪里查找查找表可以分为静态查找表和动态查找表静态查找:只需要执行查找操作动态查找:除了查找之外还需要增/删除数据元素顺序查找顺序查找是我们最开始,也是最熟悉的查找方式,就是一个一个查找(遍历)。常规顺序查找又称“线性查找”,通常用于线性表。其查找模


【6.1】图

前言图比较复杂,涉及的算法相对较多。图的定义图,就是例如下图的东西,图可以分为有向图:即带有明确的方向指向的图,可以使用 $<a,c>$ 表示从 A 到 C 顶点的路径无向图:不带有明确的方向指向的图,可以使用 $(a,c)$ 表示从 A 到 C 顶点的路径图注:有向图图注:无向图对于图


【5.1】树与二叉树

前言树的内容说多不多,说少不少,需要花费一定时间来理解。树的基本概念树的定义树是一种数据结构,它和我们现实生活中的树非常类似,其存在一个根节点,向下分裂,产生分支节点,如此,形成了如下图所示的“树”:图片来源王道《数据结构》当然,存在一种特殊的树——空树,也就是结点树为 0 的树。非空树的特性:有且


【4.1】串

前言由于计算机的发展,人们发现对于非数值类型的处理越来越多,进而衍生出来串。串也就是我们所使用的字符串。如下所有代码需要做如下引用:#include <stdio.h>#include <stdbool.h>#include <string.h>//如果你使用的是


【3.1】栈和队列

前言栈和队列是线性表的另一种变形,它拥有一些各自的特点。如下所有代码需要做如下引用:#include <stdio.h>#include <stdbool.h>#include <malloc.h>//如果你使用的是Visual Studio,则还需要添加如下一条


【2.1】线性表的顺序存储

前言在前面介绍了线性表是什么,现在来讲述线性表的两种物理结构的第一种——顺序存储结构。学习本文需要掌握一定的 C语言基础。本部分内容参考程杰老师《大话数据结构》,青岛大学王卓老师的授课,王道考研公开课等 综合个人所学的总结笔记。线性表的顺序存储结构顺序表——用顺序存储的方式实现的线性表顺序存储定义线


【2.1】线性表

前言注:此文章写于去年,仅搬运有了前面的基础,现在开始正式学习数据结构最常用也是最简单的一种结构——线性表。学习本文需要掌握一定的 C语言基础。本部分内容参考程杰老师《大话数据结构》,青岛大学王卓老师的授课,王道考研公开课等 综合个人所学的总结笔记。线性表的定义线性表,顾名思义,是具有像线一样串联起


【1.1】数据结构与算法

前言注:此文章写于去年,仅搬运算法是什么?我们如何来评估算法的好坏?有没有一种优美的数学方式来评估算法好坏,而不受客观环境的影响。例如计算机的性能影响?学习此部分,需要掌握一定的C语言基础本部分内容参考程杰老师《大话数据结构》,青岛大学王卓老师的授课等 综合个人所学的总结笔记本篇写于 时间 ,部分内