給定乙個字串,逐個翻轉字串中的每個單詞。示例 1:
輸入: 「the sky is blue」
輸出: 「blue is sky the」
示例 2:
輸入: " hello world! "
輸出: 「world! hello」
解釋: 輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。
示例 3:
輸入: 「a good example」
輸出: 「example good a」
解釋: 如果兩個單詞間有多餘的空格,將反轉後單詞間的空格減少到只含乙個。
class solution
res++;
isfirst=true;
}return res;
}};
實現函式 tolowercase(),該函式接收乙個字串引數 str,並將該字串中的大寫字母轉換成小寫字母,之後返回新的字串。示例 1:
輸入: 「hello」
輸出: 「hello」
示例 2:
輸入: 「here」
輸出: 「here」
示例 3:
輸入: 「lovely」
輸出: 「lovely」。
class solution
return str;
}};
給你兩個字串,請你從這兩個字串中找出最長的特殊序列。「最長特殊序列」定義如下:該序列為某字串獨有的最長子序列(即不能是其他字串的子串行)。
子串行 可以通過刪去字串中的某些字元實現,但不能改變剩餘字元的相對順序。空串行為所有字串的子串行,任何字串為其自身的子串行。
輸入為兩個字串,輸出最長特殊序列的長度。如果不存在,則返回 -1。
示例 1:
輸入: 「aba」, 「cdc」
輸出: 3
解釋: 最長特殊序列可為 「aba」 (或 「cdc」),兩者均為自身的子串行且不是對方的子串行。
示例 2:
輸入:a = 「aaa」, b = 「bbb」
輸出:3
示例 3:
輸入:a = 「aaa」, b = 「aaa」
輸出:-1
兩個字串長度均處於區間 [1 - 100] 。
字串中的字元僅含有 『a』~『z』 。
class solution
};
415. 字串相加
難度簡單184
給定兩個字串形式的非負整數
num1
和num2
,計算它們的和。注意:
num1
和num2
的長度都小於 5100.
num1
和num2
都只包含數字0-9
.
num1
和num2
都不包含任何前導零。你不能使用任何內建 biginteger 庫, 也不能直接將輸入的字串轉換為整數形式。
模擬計算機求解過程
class solution
if(carry==1)
res.push_back(1+'0');
reverse(res.begin(),res.end());
return res;
}};
字串刷題
刷題總結 kuangbin帶你飛 專題十六 kmp 擴充套件kmp manacher cloned a kmp模板題 include using namespace std typedef long long ll const int ma 1e6 5 int p ma int m ma int n...
演算法刷題ING
給定字串j代表石頭中寶石的型別,和字串s代表你擁有的石頭。s中每個字元代表了一種你擁有的石頭的型別,你想知道你擁有的石頭中有多少是寶石。j中的字母不重複,j和s中的所有字元都是字母。字母區分大小寫,因此 a 和 a 是不同型別的石頭。示例 輸入 j aa s aaabbbb 輸出 3class so...
刷題(leetcode字串相關)
125.驗證回文字串 給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。思路 將字串中的大寫字母轉成小寫,只保留字母和數字,然後將字串與這個字串的反轉作比較 var ispalindrome function s 對比字串和字...