首页 > 其他分享 >数据结构----队列中的链式队列

数据结构----队列中的链式队列

时间:2024-07-23 18:55:33浏览次数:9  
标签:node 队列 list linkqueue ---- 链式 数据结构 指针

 

目录

 链式队列

         1.1 逻辑结构: 线性结构   

         1.2 存储结构:链式存储  

         1.3 链式队列的操作:        

                  (1)创建一个空的队列

                  (2)入列

                  (3)出列

                  (4)判断队列是否为空

                  (5)清空队列


 

 链式队列

         1.1 逻辑结构: 线性结构   

         1.2 存储结构:链式存储  

         1.3 链式队列的操作:        

typedef struct node

{

         datatype data;//数据域

         struct node *next;//指针域

}linkqueue_node_t,*linkqueue_list_t;

typedef struct//将队列头指针和尾指针封装到一个结构体里

{

         linkqueue_list_t front;//相当于队列的头指针

         linkqueue_list_t rear;//相当于队列的尾指针

         //有了链表的头指针和尾指针,那么我们就可以操作这个链表

}linkqueue_t;

                  (1)创建一个空的队列

                  (2)入列

                  (3)出列

                  (4)判断队列是否为空

                                            

                  (5)清空队列

/链式队列操作//

#include <stdio.h>

#include <stdlib.h>

typedef int datatype;

typedef struct node

{

         datatype data;//数据域

         struct node *next;//指针域

}linkqueue_node_t,*linkqueue_list_t;

//linkqueue_list_t p === linkqueue_node_t *

typedef struct//将队列头指针和尾指针封装到一个结构体里

{

         linkqueue_list_t front;//相当于队列的头指针

         linkqueue_list_t rear;//相当于队列的尾指针

         //有了链表的头指针和尾指针,那么我们就可以操作这个链表

}linkqueue_t;

//1.创建一个空的队列

linkqueue_t *CreateEmptyLinkQueue();

//2.入列 data代表入列的数据

int InLinkQueue(linkqueue_t *p,datatype data);

//3.出列

datatype OutLinkQueue(linkqueue_t *p);

//4.判断队列是否为空

int IsEmptyLinkQueue(linkqueue_t *p);

//5.求队列长度的函数

int LengthLinkQueue(linkqueue_t *p);

//6.清空队列

void ClearLinkQueue(linkqueue_t *p);

标签:node,队列,list,linkqueue,----,链式,数据结构,指针
From: https://blog.csdn.net/D1557329860/article/details/140643582

相关文章

  • C语言输入输出函数
    输入函数1.scanf函数:用于格式化输入。例如:scanf("%d",&num);用于读取一个整数并存储到变量num中。输出函数:   1.printf函数:    用于格式化输出。例如:printf("Thenumberis%d\n",num);会输出指定的字符串和变量num     的值。   ......
  • 【学习笔记】Kylin-Desktop-V10-SP1 麒麟系统安装CrossOver软件的详细操作步骤
    一、前期准备1.关于CrossOverCrossOver是一款系统兼容软件,它让您可以在Mac和Linux系统上直接运行Windows应用,不用安装虚拟机;直接通过CrossOver软件,从dock直接启动Windows应用说明:CrossOver软件是一款付费使用软件,但支持14天试用期2.安装麒麟系......
  • 2024.7.23 Linux——DNS服务搭建(day12)
    (一)搭建nginx1.首先布置基本环境要求能够ping通外网,有yum源2.安装nginxyum-yinstallnginx然后查看验证 3.修改网页配置文件修改文件,任意编写内容,然后去物理机测试(二)创建一台客户端1.模拟一下客户,用母机克隆一台作为我们的客户端然后只需修改地址,保证能够ping......
  • C语言100道基础拔高题(1)
    1.有1,2,3,4这几个数字,问能组成多少个互不相同且无重复数字的三位数?    解题思路:首先输出由这几个数字所组成的所有三位数,接着再设置条件,使其输出的三位数不重复,下面我们来看下源代码。值得注意的是:所以题目的代码都是作者自行编写,如有更好的思路或者代码的优化,还请......
  • C语言100道基础拔高题(2)
    1.求两个数的最小公倍数和最大公约数        解题思路:求最小公倍数可以通过两个数的积再除以最大公约数来计算。而最大公约数则可以通过辗转相除法(又名欧几里得算法)来得到。源代码如下:#include<stdio.h>intmain(){ //程序分析:最小公倍数=两个数的积除以......
  • C语言100基础拔高题(3)
    1.利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。                 解题思路:通过反复调用一个打印最后一个元素的函数,来实现此功能。源代码如下:#include<stdio.h>voidoposize(charstr[],intlen);intmain(){ //利用......
  • 华帝燃气灶24小时售后服务热线电话官方统一华帝燃气灶维修中心
    华帝燃气灶售后服务电话400-6856-656华帝燃气灶24小时售后服务电话400-6856-656全面解析!华帝燃气灶官方客服热线400-685-6656引言:首先,我会从介绍华帝燃气灶的品牌背景开始,然后转向讨论其售后服务的重要性。在这一部分,我会强调为什么一个可靠的售后服务对于消费者来说至关重要......
  • 樱花燃气灶24小时售后服务热线电话官方统一樱花燃气灶维修中心
    樱花燃气灶售后服务电话400-6856-656樱花燃气灶24小时售后服务电话400-6856-656全面解析!樱花燃气灶官方客服热线400-685-6656引言:首先,我会从介绍樱花燃气灶的品牌背景开始,然后转向讨论其售后服务的重要性。在这一部分,我会强调为什么一个可靠的售后服务对于消费者来说至关重要......
  • 万家乐燃气灶24小时售后服务热线电话官方统一万家乐燃气灶维修中心
    万家乐燃气灶售后服务电话400-6856-656万家乐燃气灶24小时售后服务电话400-6856-656全面解析!万家乐燃气灶官方客服热线400-685-6656引言:首先,我会从介绍万家乐燃气灶的品牌背景开始,然后转向讨论其售后服务的重要性。在这一部分,我会强调为什么一个可靠的售后服务对于消费者来说......
  • Spring | BeanFactory与ApplicationContext的关系
    BeanFactory是Spring的早期接口,称为Spring的Bean工厂,ApplicationContext是后期更高级接口,称之为Spring容器ApplicationContext在BeanFactory基础上对功能进行了扩展,例如:监听功能、国际化功能等。BeanFactory的API更偏向底层,ApplicationContext的API大多数是对这些底层API的封装......