
数据结构
醉阁梦春雨
这个作者很懒,什么都没留下…
展开
-
链式结构上实现简单选择排序
//链式结构上实现简单选择排序#include <stdio.h>#include <malloc.h>#include <limits.h>typedef struct LNode { int data; struct LNode *link;}LinkList;//简单选择排序void SelectSort(LinkList *L) { if (!L) return; LNode *p = L->link, *q = L, *s = p原创 2021-10-11 23:23:07 · 1151 阅读 · 0 评论 -
链式存储结构的直接插入排序
链式存储结构的直接插入排序LNode *CreateNode(int val) { LNode *node = (LNode*)malloc(sizeof(LNode)); node->data = val; node->next = NULL; return node;}void InsertSort(LinkList *head) { LinkList *p = head->next, *s, *t, *q = head; while (p) { t = hea原创 2021-10-10 23:51:50 · 3688 阅读 · 6 评论 -
有向图的存储(邻接矩阵)
有向图的存储(邻接矩阵)数据结构//有向图的邻接矩阵#define MaxVertexNum 10//最大顶点数目typedef char V;//顶点的数据类型typedef int E;//边的权值的数据类型typedef struct { V vex[MaxVertexNum];//顶点表 E edge[MaxVertexNum][MaxVertexNum];//邻接矩阵 int vexnum, edgenum;//图的顶点数和弧数}MGraph;操作//判断图G是否存在边&原创 2021-08-16 20:00:49 · 1341 阅读 · 0 评论 -
线性表的链式表示(静态链表)
线性表的链式表示(静态链表)数据结构typedef struct { char data; int next;}SLinkList[MaxSize];初始化,求表长//求表长int Length(SLinkList S) { int ans = 0; int next = S[0].next; while (next>=0) { next = S[next].next; ans++; } return ans;}按序号查找//按序号查找,并返回其所在的编号原创 2021-08-15 22:20:49 · 145 阅读 · 0 评论 -
线性表的链式表示(双链表)
线性表的链式表示(双链表)数据结构typedef struct LNode{ int data; struct LNode* pre; struct LNode* next;}LNode, *DLinkList;初始化、求表长//初始化表void InitList(DLinkList& L) { L = (DLinkList)malloc(sizeof(DLinkList)); L->pre = NULL; L->next = NULL; }//求表长i原创 2021-08-15 17:58:19 · 86 阅读 · 0 评论 -
线性表的链式表示(单链表)
线性表的链式表示(单链表)表的数据结构typedef struct LNode{ int data; struct LNode *nextNode;}LNode, *LinkList;表的初始化//初始化表void InitList(LinkList& L) { L = (LinkList)malloc(sizeof(LinkList)); L->nextNode = NULL; L->data = NULL;}按序号查找//按序号i查找结点,返回结点L原创 2021-08-14 21:28:16 · 97 阅读 · 0 评论 -
线性表的顺序表示
线性表的顺序表示表的结构体#define MaxSize 50typedef struct { int data[MaxSize]; int length;}SqlList;初始化表,求表长//初始化表,构造一个空的线性表void InitList(SqlList* L) { L->data[MaxSize]; L->length = 0;}//求表长int Length(SqlList L) { return L.length;}按值查找//按值查找操原创 2021-08-14 19:54:14 · 104 阅读 · 0 评论