判斷乙個字串是不是回文串

2021-07-24 18:02:17 字數 673 閱讀 1344

所謂回文字串,就是乙個字串,從左到右讀和從右到左讀是完全一樣的,比如"aba"。

題目:判斷乙個字串是否為回文

解法:遞迴

遞迴的作用在於把問題的規模不斷縮少,直到問題縮少到能簡單地解決

問:如何縮少問題規模?

答:通過觀察可以知道,乙個回文字串其中內部也是回文。所以,我們只需要以去掉兩端的字元的形式一層層檢查,每一次的檢查都去掉了兩個字元,這樣就達到了縮少問題規模的目的。

新問題與原問題有著相同的形式

當去掉兩端字元後的字串,其產生的新問題同樣是檢查這個字串是否回文。

遞迴的結束需要簡單情景

1. 字串長度可能會奇數或偶數:

2. 如果檢查到兩端兩個字元不相同。則說明此字串不是回文,直接返回0,不需要繼續檢查

//1代表是回文,0代表不是回文

#include #include#includeusing namespace std;

int n;

char a[110];

int fun(int l, int r, char *str, int len)

int main()

return 0;

}

判斷乙個字串是不是回文

用到stringbuffer的reverse 方法將字串反轉,和以前的字串進行比較,若相等則為回文,否則不是。如下 class huiwen system.out.println 該字串不是回文 public static boolean ishuiwen string str return fal...

判斷乙個字串是不是回文字串

編寫了乙個程式,功能是判斷乙個輸入的字串是否是回文字串,如下int is plal char str 100 str s while str m str s str m str s return1 int main printf please enter a string gets str if i...

判斷乙個字串是不是數字

判斷乙個字串是不是數字的方法 1 最簡單的方法 public bool isnumber string str 這個方法適用於日常生活中遇到的大多數情況,可是如果碰到極端的情況,比如超過了int型別所能承受的最大值int.maxvalue 2147483647 就會失敗。2.乙個萬無一失的方法 pu...