您好,欢迎访问一九零五行业门户网

用C语言讲解删除队列中的元素

数据结构是以结构化方式组织的数据集合。它分为两种类型,如下所述 -
线性数据结构 - 数据以线性方式组织。例如,数组、结构体、堆栈、队列、链表。
非线性数据结构 - 数据以分层方式组织。例如,树、图、集合、表。
队列它是一种线性数据结构,插入在后端完成,删除是在前端完成的。
队列的顺序是 fifo – 先进先出
操作插入 – 将元素插入队列.delete – 从队列中删除一个元素。条件队列溢出− 尝试将元素插入满队列。
队列处于流状态 − 尝试从空队列中删除元素。
算法下面给出的是插入 ( ) 的算法 -
检查队列溢出。if (r==n)printf ("queue overflow")
否则,将一个元素插入到队列中。q[r] = itemr++
给出的是一个删除算法的html代码:given below is an algorithm for deletion ( ) −
check for queue under flow.if (f==r)printf ("queue under flow")
<ul class=list><li>否则,从队列中删除一个元素。</li></ul>item = q[f]f++
下面给出的是display ( )的算法 -
检查队列是否为空。if (f==r)printf("queue is empty")
否则,打印从‘f’到‘r’的所有元素。for(i=f; i<r; i++)printf ("%d", q[i]);
程序以下是用于在队列中删除元素的c程序 −
#include <stdio.h>#define max 50void insert();int array[max];int rear = - 1;int front = - 1;main(){ int add_item; int choice; while (1){ printf("1.insert element to queue
"); printf("2.delete an element from queue
"); printf("3.display elements of queue
"); printf("4.quit
"); printf("enter your choice : "); scanf("%d", &choice); switch (choice){ case 1: insert(); break; case 2: delete(); case 3: display(); break; case 4: exit(1); default: printf("wrong choice
"); } }}void insert(){ int add_item; if (rear == max - 1) printf("queue overflow
"); else{ if (front == - 1) /*if queue is initially empty */ front = 0; printf("inset the element in queue : "); scanf("%d", &add_item); rear = rear + 1; array[rear] = add_item; }}void display(){ int i; if (front == - 1) printf("queue is empty
"); else{ printf("queue is :
"); for (i = front; i <= rear; i++) printf("%d ", array[i]); printf("
"); }}void delete(){ if (front == - 1 || front > rear){ printf("queue underflow
"); return ; } else{ printf("element deleted from queue is : %d
",array[front]); front = front + 1; }}
输出当执行上述程序时,会产生以下结果 -
1.insert element to queue2.delete an element from queue3.display elements of queue4.quitenter your choice: 1inset the element in queue: 121.insert element to queue2.delete an element from queue3.display elements of queue4.quitenter your choice: 1inset the element in queue: 231.insert element to queue2.delete an element from queue3.display elements of queue4.quitenter your choice: 1inset the element in queue: 341.insert element to queue2.delete an element from queue3.display elements of queue4.quitenter your choice: 2element deleted from queue is: 12queue is:23 341.insert element to queue2.delete an element from queue3.display elements of queue4.quitenter your choice: 2element deleted from queue is: 23queue is:341.insert element to queue2.delete an element from queue3.display elements of queue4.quitenter your choice: 4
以上就是用c语言讲解删除队列中的元素的详细内容。
其它类似信息

推荐信息