#include<iostream>
using namespace std;
struct Node
{
int val;
Node *next;
Node() : next(NULL){}
Node(int _val) : next(NULL) ,val(_val){}
};
void print(Node *head)
{
for(auto p=head;p->next;p=p->next)
{
cout<<p->val<<" ";
}
cout<<endl;
}
int main()
{
Node *head=new Node();Node *tail=head;
//1.insert 向队尾插入一个数 x
tail->val=1;
tail->next=new Node();
tail=tail->next;
print(head);
tail->val=2;
tail->next=new Node();
tail=tail->next;
print(head);
tail->val=3;
tail->next=new Node();
tail=tail->next;
print(head);
//2.move 从队头弹出一个数;
head=head->next;
print(head);
//3. 判断队列是否为空;
if(head==tail)cout<<"empty"<<endl;
else cout<<"no empty"<<endl;
//4.查询队头元素。
cout<<head->val<<endl;
}
单链表模拟队列
最新推荐文章于 2024-09-12 13:19:42 发布