
数据结构
「已注销」
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C语言基本语法复习(二)
C语言基本语法复习(二)函数全局变量和局部变量全局变量局部变量函数的嵌套调用函数的递归调用指针指针变量指针与数组引用单点测试与多点测试 函数 基本语法格式: 返回类型 函数名称(参数类型 参数){ 函数主体 } 全局变量和局部变量 全局变量 指在定义之后的所有程序段内都有效的变量(即定义在所有函数之前) #include<stdio.h> int x; void change(){ x=x+1; } int main(){ x=10; chang原创 2020-12-20 13:58:59 · 288 阅读 · 0 评论 -
C语言基本语法复习(一)
C语言基本语法复习(一)输入输出细节数学函数冒泡排序法:定义数组的各种方式sscanf与sprintf (stdio.h头文件下) 输入输出细节 #include<stdio.h> int main(){ int a,b; scanf("%d%d",&a,&b); printf("%d",a+b); return 0; } 两个常用的转义字符 "\n "表示换行 “\0” 代表空字符NULL #include<stdio.h>原创 2020-12-19 12:14:45 · 1239 阅读 · 1 评论 -
第七章 图(三)图算法的应用
图的遍历(深度优先搜索和广度优先搜索) 一、DFS(深度优先搜索) #include<iostream> #include<iomanip> #include<string.h> #include<math.h> #include<malloc.h> using namespace std; #define MaxVertexNum 10...原创 2019-07-13 17:51:09 · 384 阅读 · 0 评论 -
第七章 图(二) 图的遍历(深度优先搜索和广度优先搜索)
@第七章 图(二) 最小生成树 :普里姆算法「Prim」、克鲁斯卡尔算法「Kruskal」 一、普里姆算法实现最小生成树 typedef struct { //记录从顶点集U到V-U的代价最小的边的辅助数组定义 int adjvex; //顶点集U中到该点为最小权值的那个顶点的序号 VRType lowcost; //那个顶点到顶点的最小权值 }minside[MAX_VERT...原创 2019-04-29 16:05:12 · 679 阅读 · 0 评论 -
第七章 图(一)图的存储结构代码实现
@第七章 图(一) 图的基本概念 邻接矩阵法、图的遍历(深度优先搜索和广度优先搜索)(要求重点掌握) 图的应用 一、邻接矩阵 //图的邻接矩阵表示 #include&amp;lt;iostream&amp;gt; #include&amp;lt;iomanip&amp;gt; #include&amp;lt;string.h&amp;gt; #include&amp;lt原创 2019-03-02 16:49:24 · 488 阅读 · 0 评论 -
第六章 树和二叉树 (二)
@第六章 树和二叉树 (二) 线索二叉树(要求掌握中序遍历的代码) 树和森林与二叉树的相互转换(要求掌握转换方法) 赫夫曼树和赫夫曼编码(要求掌握构建方法) 线索二叉树参考链接 https://blog.youkuaiyun.com/qq_39295755/article/details/79535406 typedef struct TBTNode { char data; int lt...原创 2019-03-02 16:20:02 · 488 阅读 · 0 评论 -
第六章 树和二叉树(一)
@第六章 树和二叉树 (一) 二叉树的递归遍历和非递归遍历算法 一、二叉链表存储结构 //二叉链表存储结构 typedef struct BTNode { char data; //这里默认结点data域为char型 struct BTNode *lchild; struct BTNode *rchild; }BTNode; 二、二叉树的递归遍历 //先序遍历 voi...原创 2019-03-01 18:34:00 · 457 阅读 · 0 评论 -
第五章 数组、矩阵和广义表
@第五章 数组、矩阵和广义表 一、数组 一维数组、二维数组(二维数组的行优先和列优先存储) 二、矩阵 特殊矩阵:对称矩阵、上(下)三角矩阵、三对角矩阵 稀疏矩阵:矩阵中绝大多数元素都为零的矩阵。 常用的稀疏矩阵顺序存储方法:三元组表示法和伪地址表示法。 稀疏矩阵链式存储方法中常的用两种表示法:邻接表表示法和十字链表表示法。 三、广义表 广义表:表元素可以是原子或者广义表的一种线性表的扩展结构。 广...原创 2019-03-01 11:01:57 · 274 阅读 · 0 评论 -
第四章 串
@第四章 串 一、结构体定义 //定长顺序存储表示结构体定义 typedef struct { char str[maxSize+1]; //maxSize为已经定义的常量表示串的最大长度 int length; }Str; //变长分配存储表示(又叫动态分配存储方法) typedef struct { char *ch; // 指向动态分配存储区首地址的字符指针 ...原创 2019-02-28 23:26:35 · 212 阅读 · 0 评论 -
第三章 栈与队列
@第三章 栈与队列 1、栈: 栈是一种只能在一段进行插入删除操作的线性表。栈依照存储结构分为两种:顺序栈和链式栈,其中允许进行插入(入栈)或删除(出栈)操作的一端称为栈顶(Top),另一端称为栈底,栈底是固定不变的。 栈顶由一个称为栈顶指针的位置指示器来指示,对于顺序栈就是记录栈顶元素所在数组位置表好的一个整型变量。对于链式栈就是记录栈顶元素所在结点地址的指针。栈的主要特点是:先进后出(FILO)...原创 2019-02-28 16:51:23 · 252 阅读 · 0 评论 -
第二章 线性表
@第二章 线性表 顺序表和链表的比较: (1)基于空间的比较 1)存储分配的方式:顺序表的存储空间是一次性分配的,链表的存储卡空间是多次分配的。 2)存储密度(存储密度=结点域值所占的存储量/结点结构所占的存储总量): 顺序表的存储密度=1,链表的存储密度&amp;amp;amp;amp;amp;amp;lt;1(因为结点中有指针域) (2)基于时间的比较 1)存取方式: 顺序表可以随机存取,链表只能顺序存取 2)插入/删除时移动元素的个数: ...原创 2019-02-28 11:31:27 · 254 阅读 · 0 评论