Leetcode125 驗證回文串

2021-10-07 08:43:58 字數 747 閱讀 8898

給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。

**說明:**本題中,我們將空字串定義為有效的回文串。

示例 1:

輸入: "a man, a plan, a canal: panama"

輸出: true

示例 2:

輸入: "race a car"

輸出: false

每次在leetcode都能遇到神奇的解法

【轉換字母大小寫】

ch &

0b11011111 //ch & 0xdf ---全部轉換為大寫

ch |

0b00100000 //ch & 0x20 ---全部轉換為小寫

這裡自己想了一下,真是巧妙,因為小寫和大寫字母剛好相差32,而32就是二進位制下的第5位,與上第5位的0相當於減32,或上第5位的1則相當於加上32,妙,妙就完事了。

(65–『a』 97–『a』)

【關於這一題回文串的想法】

這裡最直接的想法就是從最左到最右進行匹配,向中間縮排,匹配成功則是回文串,反之則不是。(目前還沒想到什麼比較快的思路)

class solution 

return true;}}

;

但是這還是太慢了,後面再改進吧…

leetcode125 驗證回文串

一 問題描述 給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。示例 1 輸入 a man,a plan,a canal panama 輸出 true 示例 2 輸入 race a car 輸出 false 二 和思路 2.分...

LeetCode125驗證回文數

給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。示例 1 輸入 a man,a plan,a canal panama 輸出 true示例 2 輸入 race a car 輸出 falseclass solution def...

leetcode 125 驗證回文串

給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。示例 1 輸入 a man,a plan,a canal panama 輸出 true示例 2 輸入 race a car 輸出 false注意讀題,題目中說了只考慮字母和數字...