基於棧的回文字元序列判斷

2021-10-02 23:33:09 字數 619 閱讀 8821

#include #define maxsize 10000

#includeusing namespace std;

typedef struct

sqstack;

int initstack(sqstack &s)

int push(sqstack &s,char e)

{ if(s.top-s.base==s.stacksize)return 0;//cout<<"push error"<>str;

if(str=="0")break;

n=str.length();

//cout《描述

回文序列是正反讀均相同的字串行,如「abba」和「abdba」均是回文,但是「good」不是回文。請設計乙個演算法判定給定的字串行是否為回文。

輸入多組資料,每組資料有一行。每一行為乙個長度不定的字串行a。當a為「0」時,輸入結束。

輸出對於每組資料輸出一行。若字串行a是回文序列,則輸出「yes」,否則輸出「no」。

輸入樣例 1 

abba

abdba

good

0

輸出樣例 1

yes

yesno

基於棧的回文字元序列判斷

描述 回文序列是正反讀均相同的字串行,如 abba 和 abdba 均是回文,但是 good 不是回文。請設計乙個演算法判定給定的字串行是否為回文。輸入多組資料,每組資料有一行。每一行為乙個長度不定的字串行a。當a為 0 時,輸入結束。輸出對於每組資料輸出一行。若字串行a是回文序列,則輸出 yes ...

棧的簡單應用 判斷回文字元

棧是一種後進先出的資料結構,它只能在一端進行插入和刪除操作,通常把它叫做top,類似於我們吃薯片的過程,你是不是先從最頂端開始吃的呢?判斷回文就是棧的乙個典型用法。所謂回文,就是左右對稱的結構,那麼我們只需要將其一半輸入棧中,再輸出判斷是否與字元另一半相等,就可以判斷是否是回文字元了,是不是十分簡單...

1149 回文字元序列

時間限制 2000ms 單點時限 1000ms 記憶體限制 256mb 描述 給定字串,求它的回文子串行個數。回文子串行反轉字元順序後仍然與原序列相同。例如字串aba中,回文子串行為 a a aa b aba 共5個。內容相同位置不同的子串行算不同的子串行。輸入 第一行乙個整數t,表示資料組數。之後...