判斷對稱數 回文字串

2021-06-21 10:24:39 字數 795 閱讀 5412

一、判斷乙個數是不是對稱數

思路:根據引數構造乙個新的數(實現從低位到高位逆轉),這個數是將原數的高低位對稱交換,例如:123---->321,   12321----->12321。使用while迴圈實現

/*data是要實現的函式接收到的引數*/

int temp = data;

int new_data = 0;//作為新的data與原來的data比較

while(temp)//通過迴圈一次取出data的低位至高位,並生成new_data

然後實現函式的其他部分:

/**

判斷乙個數是不是對稱數(回文數),是的話返回1,不是的話返回0

*/#include int ispalindromenum(int data)

if(data == new_data)

return 0;

}void main()

二、判斷字串是不是回文(對稱)

採用逐個字元比較的方法。當然,上面的對於對稱數的判斷也可以先將該數轉化成字串,然後採用下面的方法比較,不過好像有點繞。。。

//判斷是不是回文,是返回1,不是返回0,出錯返回-1

#include #include int palindrome(char *p)

} return 1; //遍歷字串的一半後沒有發現不同的字元,說明字串是回文

} return -1;//字串指標為空

}

判斷回文字串

遞迴入門 所謂回文字串,就是乙個字串,從左到右讀和從右到左讀是完全一樣的。比如 level aaabbaaa 題目 判斷乙個字串是否為回文 解法 遞迴 遞迴的作用在於把問題的規模不斷縮少,直到問題縮少到能簡單地解決 問 如何縮少問題規模?答 通過觀察可以知道,乙個回文字串其中內部也是回文。所以,我們...

判斷回文字串

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

回文字串判斷

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