![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构学习笔记
Aaron~~~
这个作者很懒,什么都没留下…
展开
-
图
图二、图的存储及基本操作图的存储必须要完整、准确地反映顶点集和边集的信息。2.1 邻接矩阵法所谓邻接矩阵存储,是指一个一维数组存储图中顶点的信息,用一个二维数组存储图中边的信息(即各顶点之间的邻接关系),存储顶点之间邻接关系的二维数组称为邻接矩阵。#define MaxVertexNum 100 //顶点数目的最大值typedef char VertexType;原创 2020-12-28 21:43:35 · 106 阅读 · 0 评论 -
排序
排序一、内部排序1.1 插入排序算法思想:将待排序的记录按其关键字大小插入到前面已排好序的子序列中1.1.1直接插入排序void InsertSort(int A[],int n){ int i,j,temp; for(i=1;i<n;i++) //假设第一个元素是已经排好序的,A[0],则从A[1]开始遍历 { temp=A[i]; for(j=i-1;j>=0&&A[j]>原创 2020-11-17 15:32:53 · 100 阅读 · 0 评论 -
线性表
第一部分 线性表顺序表顺序存储结构类型:#define MaxSize 50typedef struct{ int data[MaxSize]; int lengthl}SqList;顺序存储的基本操作:1、插入操作(insert)bool ListInsert(SqList &L,int i,int e)//我要在i之前插入元素e{ for(int j=L.Length;j>=i;j--) L.data[j]=L.data[j-1]原创 2020-11-05 19:32:22 · 77 阅读 · 0 评论 -
排序
排序一、内部排序1.1 插入排序1.1.1直接插入排序void InsertSort(int A[],int n){ int i,j,temp; for(i=1;i<n;i++) //假设第一个元素是已经排好序的,A[0],则从A[1]开始遍历 { temp=A[i]; for(j=i-1;j>=0&&A[j]>temp;--j) //for循环内逻辑:先初始化——>原创 2020-10-18 21:11:15 · 81 阅读 · 0 评论 -
树
树一、二叉树1.1链式存储:typedef struct BiTNode{ ElemType data; //数据域 struct BiTNode *lchild,*rchild; //左右孩子指针域}BiTNode,*BiTree;1.2二叉树的遍历1.先序遍历递归算法:void PreOrder(BiTree T){ if(T!=NULL){ visit(T);原创 2020-10-18 21:10:28 · 592 阅读 · 0 评论 -
《数据结构》——第二章 线性表(Linear List)
学习目标理解线性表的逻辑结构顺序表和链表之间的优缺点线性表定义线性表是具有相同数据类型的n(n>=0)个数据元素的有限序列。重点:必须是具有相同的数据类型且得有限还得是序列线性表特点:表中元素个数有限。表中元素具有逻辑上得顺序性,表中的元素有其先后次序。表中元素都是数据元素,每个元素都是单个元素。表中元素的数据类型都相同,这意味着每个元素占有相同大小的存储空间。线性表基本操作:InitList(&L) :初始化表Length(L) :求.原创 2020-07-18 21:04:20 · 247 阅读 · 0 评论 -
《数据结构》——第一章 绪论
在讨论一种数据结构时:定义逻辑结构(数据结构的关系)定义数据的运算(针对实现需求,应该对这种逻辑结构进行什么样的运算)确定某种存储结构,实现数据结构,并实现一些对数据结构的基本运算注意若采用顺序存储,则各个数据元素在物理上必须是连续的;若采用非顺序存储,则各个数据在物理上可以是离散的。数据的存储结构会影响存储空间分配的方便程度。数据的存储结构会影响对数据运算的速度。...原创 2020-07-18 17:28:50 · 136 阅读 · 0 评论