随笔分类 -  数据结构

摘要:初始化: typedef struct DNode { int data; struct DNode *prior,*next; }DNode, *DLinkList; //初始化双链表 bool InitDLinkList(DLinklist &L) { L = (DNode *)malloc(s 阅读全文
posted @ 2020-06-18 17:26 swefii 阅读(262) 评论(0) 推荐(0)
摘要:单链表的建立 Step1:初始化一个单链表 Step2:每次取一个数据元素,插入到表尾/表头 尾插法建立单链表: LinkList List_TailInsert(LinkList &L) { //正向建立单链表 int x; L = (LinkList)malloc(sizeof(LNode)); 阅读全文
posted @ 2020-06-17 12:58 swefii 阅读(228) 评论(0) 推荐(0)
摘要:按位查找: 依次循环找到第i-1个结点在上一篇按位插入元素的部分已经写过了,这里也是一样的,只不过把i-1改成了i //按位查找,返回第i个元素(带头结点) LNode * GetElem(LinkList L, int i) { if (i < 0) return NULL; LNode *p; 阅读全文
posted @ 2020-06-16 21:24 swefii 阅读(263) 评论(0) 推荐(0)
摘要:typedef struct LNode { int data; struct LNode *next; }LNode, *LinkList; 带头结点的按位序插入: //在第i个位置插入元素e bool ListInsert(LinkList &L, int i, char e) { if (i 阅读全文
posted @ 2020-06-15 18:20 swefii 阅读(269) 评论(0) 推荐(0)
摘要:不带头结点: typedef struct LNode { int data; struct LNode *next; }LNode,*LinkList; //初始化一个空的单链表 bool InitList(LinkList &L) { L = NULL; return true; } void 阅读全文
posted @ 2020-06-14 19:52 swefii 阅读(207) 评论(0) 推荐(0)
摘要:插入与删除: #include <stdio.h> #define MaxSize 10 typedef struct { int data[MaxSize]; int length; }SqList; bool ListInsert(SqList &L, int i, int e) { if (i 阅读全文
posted @ 2020-06-14 09:22 swefii 阅读(288) 评论(0) 推荐(1)
摘要:所谓顺序表即以顺序存储的方式实现线性表 以下为静态分配实现 #include <stdio.h> #define MaxSize 10 //最大长度 typedef struct{ int data[MaxSize]; int length; //当前长度 }SqList; //顺序表静态定义 vo 阅读全文
posted @ 2020-06-13 13:23 swefii 阅读(457) 评论(0) 推荐(0)