數據結構之順序隊列-初始化,入棧,出棧


#include<stdio.h>
#include<iostream>
#include<malloc.h>
#include<stdlib.h>
#include<string.h>
using namespace std;
#define maxsize 60
typedef struct node
{
int data[maxsize];
int front;
int rear;
}seq;
void init(seq *q)
{
q->front=0;
q->rear=0;
}
int empty(seq q)
{
if(q.front==q.rear)
return 1;
else
return 0;
}
int insert(seq *q,int e)
{
if(q->rear==maxsize)
return 0;
q->data[q->rear]=e;
q->rear=q->rear+1;
return 1;
}
int del(seq *q,int *e)
{
if(q->front==q->rear)
return 0;
else
{
*e=q->data[q->front];
q->front=q->front+1;
return 1;
}
}

int main()
{
seq q;
int str[]={1,2,3,4,5,6,7,8,9};
int i,length=9;
int x;
init(&q);
for(int i=0;i<length;i++)
{
insert(&q,str[i]);
}
del(&q,&x);
cout<<"隊列首元素為:"<<x<<endl;
printf("剩余隊列元素為:");
if(!empty(q))
{
for(i=q.front;i<q.rear;i++)
{
cout<<q.data[i]<<" ";
}
}
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM