数据结构
数据结构
雄非本熊
呆人不呆脑
展开
-
C语言实现队列
1.概念队列也是一种线性的数据结构,采用先进先出的方式来管理数据,存入(队尾)和取出(队首)在两个不同的端点进行,需要记录两个端点各自的位置2.实现思路队列是一种逻辑概念,可以使用顺序结构来实现(顺序队列),也可以使用链式结构来实现(链式队列)顺序队列需要记录头和尾,一般的顺序队列的队列空间只能使用一次,为了重复使用队列空间,顺序队列会被设计为环形队列(循环队列)环形队列理论上空和满...原创 2020-01-14 16:57:13 · 423 阅读 · 0 评论 -
C语言实现栈
1.概念栈是一种线性的数据结构,采用先进后出的方式管理数据,一端的位置固定(栈底),另外一端随着数据的进出随时改变(栈顶)2.实现思路栈是一种逻辑概念,可以使用顺序结构来实现(顺序栈),也可以使用链式结构来实现(链式栈)链式栈可以使用单链表来实现,以头结点作为栈顶,从头部插入作为入栈,从头部删除作为出栈3.设计结构体typedef int T;typedef struct{ ...原创 2020-01-14 15:53:39 · 217 阅读 · 0 评论 -
C语言实现内核链表
内核链表(list.h)////////////////////////////////////////////////////////////////////// Copyright(C), 2013-2016, GEC Tech. Co., Ltd.//// File name: GPLE/ch03/3.1/list.h//// Author: Linux Kernel/...原创 2020-01-14 15:17:22 · 466 阅读 · 0 评论 -
C语言实现顺序表
顺序结构:顺序表,数组都属于顺序结构。顺序表结构体:typedef int T;typedef struct sqlist{ T data[N];//存放需要存储的数据 int last;//记录数据个数}sqlist_t,*sqlink_t;C语言实现初始化顺序表sqlink_t init_sqlist(){ sqlink_t sq = (sql...原创 2020-01-14 14:54:01 · 327 阅读 · 0 评论 -
C语言实现单向链表
单向链表注意:1.头结点的指针域指向链表第一个节点,数据域不使用单链表最后一个节点的指针域必须设置为NULLC语言实现创建空链表linklist_t create_emptylist(){ //分配头节点空间 linklist_t head = (linklist_t)malloc(sizeof(linknode_t)); if(head) ...原创 2020-01-14 14:18:01 · 290 阅读 · 0 评论 -
C语言实现双向链表
创建空链表dlist_t create_emptydlist(){ //申请空间 dlist_t head = (dlist_t)malloc(sizeof(dnode_t)); if(head) { //head->data = -1; //空链表头节点的前置和后置指针都指向自己 head->pr...原创 2020-01-13 14:21:54 · 304 阅读 · 0 评论