實驗二棧和佇列

2021-08-19 17:30:03 字數 2848 閱讀 9866

一、

1.順序棧:

源**:

#include

const int stacksize=10;

template

class seqstack

~seqstack(){}

void push();

void pop();

datatype gettop()

int empty()

private:

datatype data[stacksize];

int top;

};template

void seqstack::push()//入棧

}template

void seqstack::pop()//出棧

}int main()

執行結果:

2.鏈棧:

源**:

#include

template

struct node

;template

class linkstack

~linkstack(){};

void push(datatype x);

datatype pop();

datatype gettop()

int empty()

private:

node* top;

};template

void linkstack::push(datatype x)

template

datatype linkstack::pop()

int main()

執行結果:

3.順序佇列:

源**:

#include

const int queuesize=10;

template

class cirqueue

~cirqueue(){}

void enqueue(datatype x);

datatype dequeue();

datatype getqueue();

int empty()

private:

datatype data[queuesize];

int front,rear;

};template

void cirqueue::enqueue(datatype x)

template

datatype cirqueue::dequeue()

template

datatype cirqueue::getqueue()

int main()

執行結果:

4.鏈佇列:

源**:

#include

template

struct node

;template

class linkqueue

;void enqueue(datatype x);

datatype dequeue();

datatype getqueue();

int empty()

private:

node* front,* rear;

};template

linkqueue::linkqueue()

template

void linkqueue::enqueue(datatype x)

template

datatype linkqueue::dequeue()

int main()

執行結果:

二、將乙個十進位制數轉換為二進位制數。

源**:

#include

void main()

cout<

";for(i=i-1;i>=0;i--)

執行結果:

三、飯堂排隊打飯

源程式:

#include

template

struct node

;template

class linkqueue

;void enqueue(datatype x);

datatype dequeue();

datatype getqueue();

int empty()

private:

node* front,* rear;

};template

linkqueue::linkqueue()

template

void linkqueue::enqueue(datatype x)

template

datatype linkqueue::dequeue()

int main()

for(i=1;i<=5;i++)

執行結果:

實驗二 棧和佇列

這個作業屬於哪個課程 這個作業要求在 homework 11296 這個作業的目標 棧和佇列 學號2018204153 一 實驗目的 1 掌握棧的結構特性及其入棧,出棧操作 2 掌握佇列的結構特性及其入隊 出隊的操作,掌握迴圈佇列的特點及其操作。二 實驗預習 說明以下概念 1 順序棧 棧的順序儲存結...

實驗二 棧和佇列 順序棧 順序佇列

棧是什麼?棧是一種結構,也是一種方式。棧代表著 後進先出 我是這麼理解的 如圖 就像是放在試管裡的雞蛋,新放進去的雞蛋肯定是在最上層,想拿走的話只能從最上層乙個個拿,這種方式叫做棧。棧 stack 又名堆疊,它是一種運算受限的線性表。其限制是僅允許在表的一端進行插入和刪除運算。這一端被稱為棧頂,相對...

實驗二 棧和佇列的應用

實驗目的 本次實驗的目的在於使學生深入了解棧和佇列的特徵,掌握在實際問題背景下的靈活運用。實驗要求 正確設計和實現本程式,記錄輸出結果。實驗內容 1 佇列的各種基本操作實現。2 十進位制數向n進製資料的轉換。棧的應用 附 include include include define overflow...