1.反轉字串中的每乙個單詞
input:"hello world!"
output:"world! hello"
思路:利用string流輸入將原字串按
空格分割,然後
去除尾部空格,整體翻轉字串,最後遍歷字串進行部分翻轉。
class solution
// 去除尾部空格
int sz = str.size() - 1;
while (str[sz] == ' ')
// 先整體翻轉
reverse(str.begin(), str.end());
for (int i = 0, j = 0; i <= str.size(); ++i)
}return str;
}};
2.多個字串的公共最長字首
input:["dog","rececar","car"]
output:""
input:["flower","flow","flight"]
output:"fl"
思路:假設第乙個字串為最長字首,比較當前最長字首和下乙個字串的公共部分,不斷更新公共字首。
class solution
// 更新最長公共字首
res = res.substr(0, len);}}
return res;
}};
3.字串轉整數
input:"42"
output:42
思路:先過濾前面的空格,然後判斷正負號以及首字元是不是數字,最後判斷越界。
class solution
else if (str[i] == '+')
else if (!isdigit(str[i]))
return 0;
long long int res = 0;
for (; i < str.size(); ++i)
else
break;
}return res * flag;
}};
4.n位字串刪除k個數字,使剩下的數字串最小
5.回文子串的個數
6.最長無重複字元的子串
7.最長回文子串
8.查詢子串的位置
字串問題 翻轉字串
題目 給定乙個字元型別的陣列chas,請在單詞間做逆序調整,只要做到單詞順序逆序即可,對空格的位置沒有特別要求。例如把chas看成字串為 i love you 調整成 you love i 補充題目 給定乙個字元型別的陣列chas和乙個整數size,請把大小為size的左半區整體移到右半區,右半區整...
字串問題
char str1 abcd char str2 efgh str1 str2 這個操作是合法的,結果也是正確的 這兩個字串都是儲存在棧上,可以修改其中的內容。其中,str1 str2相當於把str2字串的第乙個字元 e 賦給了str1的第乙個字元,因此,str1就變成了 ebcd 但是如果用字串指...
字串問題
ll是什麼?這都不知道的話,別說自己是程式猿啊!longlong?肯定是lovelive啊!qwb為了檢驗你是否是真正的程式猿,決定出道題考考你 現在程式會輸入一行字串,如果恰好是lovelive 不區分大小寫 就輸出yes,否則輸出no。輸入有多組 組數不超過100 每組輸入一行字串 字串長度不超...