given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.
for example,
"a man, a plan, a canal: panama"
is a palindrome.
"race a car"
is not
a palindrome.
note:
we define empty string as valid palindrome.
給定乙個字串,判斷是否是乙個回文串。考慮只有字母或數字的情況。
將空串看做是有效的回文串。
tolower():將大寫字元轉化為小寫;
isalnum():判斷字元是否是字母或數字。
(1)如果可以用額外空間,那麼在第一次遍歷整個字串的時候,在將大寫轉小寫的同時,只保留字母或者數字。
時間複雜度是o(n),空間複雜度是o(n)。
class solution {
public:
bool ispalindrome(string s) {
if(s.empty()) return true;
string tmp;
for (int i = 0;i
//時間複雜度o(n),空間複雜度o(1)
class solution {
public:
bool ispalindrome(string s) {
if(s.empty()) return true;
string tmp;
for (int i = 0;i
回文字串
描述 所謂回文字串,就是乙個字串,從左到右讀和從右到左讀是完全一樣的,比如 aba 當然,我們給你的問題不會再簡單到判斷乙個字串是不是回文字串。現在 要求你,給你乙個字串,可在任意位置新增字元,最少再新增幾個字元,可以使這個字串成為回文字串。輸入第一行給出整數n 0思路分析 1.判斷字串前後倆個字元...
回文字串
還是在龐果網 看到的題目,這次選了個簡單的,回文字串。題目內容 回文字串是指從左到右和從右到左相同的字串,現給定乙個僅由小寫字母組成的字串,你可以把它的字母重新排列,以形成不同的回文字串。思路 不滿足上面條件的直接返回0,因為這樣構不成回文 判斷出能形成回文以後,將元素減半,在字串一半的長度內進行組...
回文字串
時間限制 3000 ms 記憶體限制 65535 kb 難度 4 描述 所謂回文字串,就是乙個字串,從左到右讀和從右到左讀是完全一樣的,比如 aba 當然,我們給你的問題不會再簡單到判斷乙個字串是不是回文字串。現在要求你,給你乙個字串,可在任意位置新增字元,最少再新增幾個字元,可以使這個字串成為回文...