簡單實現佇列

2021-09-10 06:15:22 字數 1038 閱讀 9170

簡單實現佇列
題目:現有名稱為namei且處理時間為timei的n個任務按順序排成一列,cpu通過迴圈排程法逐一處理這些任務,每個任務最多處理q ms(這個時間被稱為時間片)。如果q ms之後任務尚未處理完畢,那麼該任務將被移動至隊伍末尾,cpu隨即開始處理下乙個任務。

輸入:n q

name1 time1

name2 time2

…namen timen

第一行輸入表示任務數的整數n與表示時間片的整數q,用乙個空格隔開。

接下來行輸入各任務的資訊。字串namei

與timei用乙個空格隔開。

輸出:按照任務完成的先後順序輸出各任務名以及結束的時間,任務名與對應結束的時間用空格隔開,每一對任務名與結束時間各佔一行。

輸入示例

5 100

p1 150

p2 80

p3 200

p4 350

p5 20

輸出示例

p2 80

p5 400

p1 450

p3 550

p4 800

**:

#include

"stdafx.h"

#include

#include

using namespace std;

#define len 100005

struct a

;int n,head,tail;

a q[len]

,u;a dequeue()

void enqueue (a x)

intmain()

head=1;

tail=n+1;

while

(head!=tail)

//其實最開始時tail和head就是在一起的,但是前兩行**避開了這個問題

//因此最終head就等於tail了,所以就能出來了

else cout<" "<}}

到此結束

鏈式佇列簡單實現

鏈式佇列的簡單實現,注釋我就不寫了.queue.h ifndef queue h define queue h 1 typedef int int32 typedef unsigned int uint32 typedef unsigned char uchar8 typedef char char...

佇列的簡單實現

佇列是只允許在一端進行插入操作,而在另一端進行刪除操作的線性表 零個或多個資料元素的有限序列,有順序 缺點 佇列中會空出乙個位置不被使用 public class queue else public queue public int getsize public void push object o...

簡單佇列的實現

package jing.able.impl author panjing describe date 2019 4 14 time 15 37 public inte ce imyqueue package jing.able.dao import jing.able.impl.imyqueue ...