
数据结构学习笔记
文章平均质量分 56
数据结构学习笔记
君子兰i
格物致知,知物由学!
展开
-
数据结构——二叉树编程实现
//二叉链树的存储定义typedef struct node{ ElemType data; //数据元素 struct node *lchild; //定义左孩子结点 struct node *rchild; //定义右孩子结点}BTNode;//基本运算及实现1.创建二叉树#include "btree.h" //包含二叉树的结构声明void createBTree(BTNode *&b,char *str){ BTNode *st[maxsize],*p; int to原创 2021-04-27 20:25:26 · 1095 阅读 · 0 评论 -
数据结构——队列编程实现
定义:队列简称队,是一种运算受限的线性表。把进行插入的一端叫做队尾(rear)把进行删除的一端叫做对头(front)插入称为进队或者入队 删除称为出队或者离队顺序队的结构体定义:#define Maxsize 10typedef struct{ ElemType data[Maxsize]; int front,rear;}sqQueue;顺序队的四要素:初始时:front=rear=-1;队空条件:front=rear;队满条件:rear=Maxsize-1元素e进队:rea原创 2021-04-27 20:22:41 · 437 阅读 · 0 评论 -
数据结构——栈的编程实现
定义:栈是一种只能在表的一端进行插入或删除操作的线性表总结约定:1.top总是指向栈顶元素,初始值为-1栈空条件:top=-1栈满条件:top=MaxSize-1进栈操作:进栈时top增加1,既top++,再将元素入栈出栈操作:先从top处将元素取出,再将top-1,既top–//栈的顺序存储结构#define MaxSize 10typedef struct{ ElemType data[MaxSize]; int top; //top为栈顶}sqstack;//在顺序栈中实现原创 2021-04-27 20:17:14 · 637 阅读 · 0 评论 -
数据结构——线性表编程实现
线性表顺序存储结构编程实现线性表顺序存储结构的定义(随机存储)#define MaxSize 100typedef struct{ ElemType data[Maxsize]; int length; }sqlist;//建立顺序表void CreatList(sqlist *&L,ElemType a[],int n){ //由a中的n个元素建立顺序表 int i=0,k=0; //k表示L中的元素个数,初始值为0 L=(sqlist *)malloc(sizeof(sql原创 2021-04-27 20:13:24 · 1013 阅读 · 0 评论 -
数据结构——排序知识点
定义:按关键字进行递增(或递减)的有序排列2.内排序和外排序排序过程中不涉及数据的内外,交换称为内排序,反之,称为外排序3.内排序的分类:1.基于比较的排序:1.插入排序:直接插入排序,折半插入排序,希尔排序2.交换排序:冒泡排序,快速排序3.选择排序:简单选择排序(直接选择排序),堆排序(利用二叉树进行排序)4.归并排序(利用数组原理进行划分的排序)2.不基于比较的排序:基数排序4.排序算法的稳定性:经过排序后这些相同关键字的记录之间的相对位置次序保持不变的排序方法是稳定的,.原创 2021-04-27 20:06:36 · 768 阅读 · 0 评论