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

2021-07-24 16:19:38 字數 1472 閱讀 7625

假設正讀和反讀都相同的字串行為「回文」,例如,『abba』和『abcba

』是回文,『

abcde

』 和『

ababab

』則不是回文。試寫乙個演算法判別讀入的乙個以『@』為結束符的字串行是否是「回文」。

#include #include#define m 100 

typedef struct //定義棧

zhan;

void cshz(zhan *s) //初始化棧

int pdzk(zhan *s) //判斷棧是否為空

else

}

void ruzhan(zhan *s,char x) //入棧

else

}

char chuzhan(zhan *s) //出棧

else

}

typedef struct dui;

void cshdl(dui *q) //初始化佇列

void rudui(dui *q,char e) //入隊

else

}

char chudui(dui *q) //出對

else

}

int main()

while(pdzk(s))

else

} if(y==1)

printf("此字串為回文\n");

else

printf("此字串不是回文\n");

return 0;

}

輸入輸出示例:1.

輸入乙個字串:

abbabba@

此字串為回文

--------------------------------

process exited after 8.796 seconds with return value 0

請按任意鍵繼續. . .

2.

輸入乙個字串:

abbabb@

此字串不是回文

--------------------------------

process exited after 7.968 seconds with return value 0

請按任意鍵繼續. . .

利用棧判斷字串括號是否匹配

任務描述 本關任務 基於棧stack資料結構判斷字串中的括號是否匹配,字串中僅包含如下字元 相關知識 為了完成本關任務,你需要掌握 1.如何建立乙個棧,2.入棧 出棧操作。演算法思想 輸入符號串str 初始化棧s for i 0 str i 0 i 掃瞄括號串 若棧不空,則匹配不成功,否則匹配成功 ...

判斷字串是否是中文

一,判斷字元是否是中文 1 通過編碼判斷單個字元是否是中文。如下 判斷乙個字元是中文還是英文 public static bool ischinese char c 1 將字串轉換成字元陣列,遍歷字元陣列判斷每個字元是否是中文。如下 判斷字串中是否包含中文 public static bool is...

判斷字串是否回文(鏈棧)

鏈棧判斷字串是否中心對稱 回文 舉例 xyx,xyyx 中心對稱 xy,xyy 不中心對稱 注 1 鏈棧的頭結點不設定元素 2 不輸入 用於判空 include include using namespace std typedef char elemtype const int maxsize 1...