数据结构与算法
C语言实现常用数据结构与算法
Helpsen
这个作者很懒,什么都没留下…
展开
-
双链表C语言实现
双链表C语言实现#include <stdio.h>#include <stdlib.h>/*声明描述节点信息的结构体*/typedef struct node { int data; //数据 struct node *next; //指向下一个节点 struct node *prev; //指向上一个节点}node_t;/*声明描述整个链表的结构体*/typedef struct list { struct node head;原创 2022-02-10 02:20:20 · 516 阅读 · 0 评论 -
单链表C语言实现
#include <stdio.h>#include <stdlib.h>typedef struct node{ int data; struct node *next;}*List,Node;//头插法List headInsert(){ //申请头结点 Node *head = (Node*)malloc(sizeof(Node)); head->data = 0; head->next = NULL; int x = 0; //输入原创 2022-02-03 17:21:34 · 887 阅读 · 0 评论 -
循环队列C语言实现
循环队列C语言实现特性: 先进先出(First In First Out=FIFO),取数从队列的开头取,存储从队列尾部存。第一个元素又称首元素,最后一个元素又称尾元素。Linux系统三大队列:消息队列:进程间通信的一种手段。工作队列:延后执行的一种手段。等待队列:随时随地让进程休眠并且让进程随时随地被唤醒。/*循环队列*/#include <stdio.h>#include <stdlib.h>/*声明描述队列属性的结构体*/typedef struc原创 2022-02-08 17:38:30 · 532 阅读 · 0 评论 -
栈C语言实现
栈C语言实现#include <stdio.h>#include <stdlib.h> //为了用malloc函数/*声明描述栈属性信息的结构体*/typedef struct stack { int *arr; //数组的首地址 int cap; //栈的容量大小 int top; //栈顶}stack_t;/*定义栈相关的操作函数*///1.给栈分配内存,让arr指向分配的内存的首地址//并且把栈初始化为空栈(没有数据)void stac原创 2022-02-04 15:56:00 · 398 阅读 · 0 评论