C語言使用棧和佇列來判斷回文

2021-10-01 03:12:20 字數 587 閱讀 2871

演算法思想

使用棧和佇列來分別接受輸入的字串,利用棧先進後出,佇列先進先出的特點進行前後比較來判斷是否是回文

你可以使用雙端佇列更好的解決問題。

使用陣列的話,**又長又不高效

#include

#include

#include

#include

using namespace std;

#define maxsize 50

bool ishword

(char* str)

while

(!p.

empty()

&&!q.

empty()

) p.

pop();

q.pop();

}return p.

empty()

&& q.

empty()

;}int main()

return0;

}

回文判斷(棧 佇列)

我們把正讀和反讀都相同的字串行稱為 回文 例如abba和abcba是回文,abcde不是回文。嘗試寫乙個演算法判別讀入的乙個以 為結束符的字元是否是回文。輸入格式 輸入為一行,為待判斷的字串,以 結尾。字串長度不超過 100100,除最後乙個字元外,其餘字元均由小寫字母組成。輸出格式 輸出一行,如果...

棧和佇列判斷回文數

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

回文 棧和佇列

題目描述 假設稱正讀和反讀都相同的字串行為 回文 例如,abba 和 abcba 是回文,abcde 和 ababab 則不是回文。試寫乙個演算法判別字串行是否是 回文 輸入abcba 輸出是回文 樣例輸入 copy ababab 樣例輸出 copy 不是回文 分析 本題的話,我們可以利用棧。棧彈出...