用棧和佇列實現判斷是否是回文序列

2021-10-11 02:29:24 字數 960 閱讀 6794

在學習了棧和佇列之後,為加強對棧和佇列的熟練運用,特此運用棧和佇列進行回文判斷。雖然很麻煩,本來乙個for迴圈就能解決的問題,但是增強了對棧和佇列的理解和運用,還是值得一試的。

本**實現所需功能所需要理解的是棧有後進先出、佇列是先進先出的特點,並掌握入隊、入棧、出隊、出棧的函式實現。

`//整體思路:利用棧的後進先出和佇列的先進先出的特點,將乙個陣列序列分別輸入佇列和棧中,然後分別依次彈出每個元素,如果每次彈出的都相同,則是回文序列,否則不是

#include

#include

#include

struct seqqueue

;typedef struct seqqueue pseqqueue;

pseqqueue createemptyqueue_seq(int m) //建立佇列

}else free(q);

printf(「out of space!」);

return null;

}int isemptyqueue(pseqqueue p) //判斷是否為空佇列,若是空佇列,返回0 ,有最好,無也行

void enqueue_seq(pseqqueue p,char x) //入隊

}char dequeue_seq(pseqqueue p) //出隊

;typedef struct seqstack pseqstack;

pseqstack createemptystack(int m) //開始建立棧

else

}void push_seq(pseqstack p,char x)

}char pop_seq(pseqstack p)

}int isemptystack(pseqstack p)

int main()

for(i=0;i}printf(「是回文序列!」);

return 0;

}`

用棧判斷是否是回文字串

toc 你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下markdown的基本語法知識。全新的介面設計,將會帶來全新的寫作體驗 在創作中心設定你喜愛的 高亮樣式,markdown將 片顯示選擇的高亮樣式進行展示 全...

利用棧和佇列判斷字串是否是回文 c語言

假設正讀和反讀都相同的字串行為 回文 例如,abba 和 abcba 是回文,abcde 和 ababab 則不是回文。試寫乙個演算法判別讀入的乙個以 為結束符的字串行是否是 回文 include include define m 100 typedef struct 定義棧 zhan void c...

棧和佇列判斷回文數

假設稱正讀和反讀都相同的字串行為 回文 例如 abba 和 abcba 是回文,abcde ababab 則不是回文,試編寫演算法判別讀入的乙個以 為結束符的字串行是否為 回文 由於依次輸入的字串行中不含特殊的分隔符,則在判別是否是回文時,可以同時利用棧和佇列兩種結構來實現。include incl...