當前位置:首頁 » 編程語言 » 隊列的c語言實現

隊列的c語言實現

發布時間: 2024-12-15 20:36:55

『壹』 C語言中使用隊列

如果你用vc,#include<deque>就好了,但是注意要加上using naemspace std;
我是當你用的c++的STL,STL中沒有真正的隊列和棧,他們都是通過對雙端隊列的改造得到的,所以包含的文件可能和你想的不一樣。而且這些頭文件都沒有.h結尾!很特別
如果你不是vc,當我沒說

『貳』 C語言用數組實現循環隊列的入隊出隊

//定義一個int型數組que,長度為N(常量切大於2).
intque[N];
intrear=0,front=0;//隊尾隊頭

判斷隊列已滿:

if((front+1)%N==rear%N)//成立則隊列已滿

判斷隊列為空

if((rear==front))//成立則隊列空

入隊(一般在入隊前判斷隊列是否已滿)

//將val入隊
que[front++]=val;
front%=N;

出隊(一般在出隊前判斷隊列是否為空)

rear=(rear+1)%N;

下一個要出隊的元素(一般先判斷是否為空)

que[rear];

『叄』 C語言,用數組實現隊列的入隊,出隊函數編程

這樣的話應該符合你的要求:

#include<stdio.h>
voidadd(intqueue[],intx);
intTop(intqueue[]);
voiddel(intqueue[]);
intend=0;
intmain()
{
intn;
scanf("%d",&n);//將要入隊列n個元素
intqueue[1000];
for(inti=1;i<=n;i++)//輸入n個元素
{
add(queue,i);//將i加入隊列
}
//驗證加入隊列的元素,將隊列中的元素按照輸入的順序輸出:
for(i=1;i<=n;i++)
{
printf("%d",Top(queue));//Top函數返回隊頭元素
del(queue);//刪除隊頭元素
}
//驗證輸出已經出隊列後的隊列(數組)元素:
printf(" ");
for(i=1;i<=n;i++)
printf("%d",queue[i]);
printf(" ");
return0;
}
voidadd(intqueue[],intx)
{
queue[++end]=x;
}
intTop(intqueue[])
{
returnqueue[1];//注意,這里的函數始終returnqueue[1];這里是和將普通數組中的元素輸出最大的不同之處。!!!!!!
}
voiddel(intqueue[])
{
for(inti=2;i<=end;i++)
{
queue[i-1]=queue[i];
}
queue[end]=0;//將刪除後的地方置0
end--;
}
熱點內容
安卓分屏怎麼 發布:2024-12-15 22:56:00 瀏覽:172
安卓哪個天氣預報不錯 發布:2024-12-15 22:52:12 瀏覽:39
網址導航源碼下載 發布:2024-12-15 22:43:26 瀏覽:489
linux自動更新 發布:2024-12-15 22:41:41 瀏覽:758
小米盒子怎麼查看配置 發布:2024-12-15 22:33:29 瀏覽:632
怎麼才能破wifi密碼 發布:2024-12-15 22:30:53 瀏覽:300
WE編程 發布:2024-12-15 21:46:11 瀏覽:194
安卓手機電腦端哪個軟體好用 發布:2024-12-15 21:46:07 瀏覽:498
手游編程教學 發布:2024-12-15 21:45:17 瀏覽:931
華為手機的鎖屏和密碼在哪裡找得到 發布:2024-12-15 21:37:41 瀏覽:106