判斷回文字串

2021-06-11 06:18:59 字數 774 閱讀 9388

《遞迴入門》

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

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

解法:遞迴

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

問:如何縮少問題規模?

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

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

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

遞迴的結束需要簡單情景

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

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

遞迴跳躍的信任

此題的遞迴分解比較簡單,所以對在遞迴過程中細節的實現,我們可以直接看出。但是一些較複雜的題目上,我們就沒那麼容易看出過程中細節的實現,這時候就需要我們遞迴跳躍的信任!

#include using namespace std;

int fun(int low, int high, char *str, int length)

int main()

判斷回文字串

本題要求編寫函式,判斷給定的一串字元是否為 回文 所謂 回文 是指順讀和倒讀都一樣的字串。如 xyzyx 和 xyzzyx 都是回文。bool palindrome char s 函式palindrome判斷輸入字串char s是否為回文。若是則返回true,否則返回false。include in...

回文字串判斷

問題描述 回文字串指的是乙個順著讀和反過來讀都一樣的字串,比如 abcba poop 等,判斷乙個字串是否是回文字串。這裡提供兩種解法 解法一 同時從字串頭尾開始向中間掃瞄字串,如果所有頭尾字元都一樣,那麼這個字串就是乙個回文字串。採用這種方法,只需要維護頭部和尾部兩個掃瞄指標即可,終止條件是尾指標...

判斷回文字串

1.設計思想 先根據提示輸入一段string字串,將string型字串轉化成char 型字串,再確定字串的第乙個字元下標和最後乙個字元下標。再寫返回值是boolean型的判斷兩個字元是否相等的方法,把字串和第乙個字元下標和最後乙個字元下標作為形參。判斷字元是否相等的函式裡,依次從字串兩端到中間判斷字...