字符串
Saulty
这个作者很懒,什么都没留下…
展开
-
438. 找到字符串中所有字母异位词
438. 找到字符串中所有字母异位词题目题解代码题目题解固定的滑动窗口遇到字母,考虑26位的数组,通过scnt==pcnt判断,两个字符串是否含有相同的字母进一位,出一位的思想代码class Solution{public: vector<int> findAnagrams(string s, string p){ int m=s.size(); int n=p.size(); vector<int> re原创 2021-08-11 14:20:31 · 57 阅读 · 0 评论 -
LeetCode 409. 最长回文串
LeetCode 409. 最长回文串题目题解代码题目题解用哈希表存放字母元素出现的次数,偶数直接放入,奇数取出一位作为中心代码class Solution {public: int longestPalindrome(string s) { unordered_map<char,int> haxi; int flag=0; for(int i=0;i<s.size();i++) haxi[s原创 2021-08-06 13:01:41 · 40 阅读 · 0 评论 -
LeetCode 415. 字符串相加
LeetCode 415. 字符串相加题目题解代码题目题解模拟竖式加法下标为负数补0代码class Solution {public: string addStrings(string num1, string num2) { int i=num1.size()-1; int j=num2.size()-1; int add=0; string res; while(i>=0||j>=0|原创 2021-08-06 13:01:17 · 45 阅读 · 0 评论 -
LeetCode 383. 赎金信
LeetCode 383. 赎金信题目题解代码题目题解题目意思是,ransomNote的字符是否都存在于magazine中代码// 时间复杂度: O(n)// 空间复杂度:O(1)class Solution {public: bool canConstruct(string ransomNote, string magazine) { int record[26] = {0}; for (int i = 0; i < magazine.l原创 2021-07-23 12:46:27 · 98 阅读 · 0 评论 -
LeetCode 242. 有效的字母异位词
LeetCode 242. 有效的字母异位词题目题解代码题目题解排序判等哈希表(数组)26代码class Solution {public: bool isAnagram(string s, string t) { // int l1=s.size(); // int l2=t.size(); // if(l1!=l2); // return false; sort(s.begin(),s.e原创 2021-07-23 12:46:00 · 38 阅读 · 0 评论 -
LeetCode 387. 字符串中的第一个唯一字符
LeetCode 387. 字符串中的第一个唯一字符题目题解代码题目题解和次数有关考虑哈希表哈希表键为存储频数代码class Solution {public: int firstUniqChar(string s) { int len=s.size(); unordered_map<char,int> haxi;//unordered_map<int,int> haxi; for(int i=0;i<原创 2021-07-23 12:45:27 · 41 阅读 · 0 评论 -
LeetCode 784. 字母大小写全排列
LeetCode 784. 字母大小写全排列题目题解代码题目给定一个字符串S,通过将字符串S中的每个字母转变大小写,我们可以获得一个新的字符串。返回所有可能得到的字符串集合。示例:输入:S = “a1b2”输出:[“a1b2”, “a1B2”, “A1b2”, “A1B2”]输入:S = “3z4”输出:[“3z4”, “3Z4”]输入:S = “12345”输出:[“12345”]提示:S 的长度不超过12。S 仅由数字和字母组成。题解类比组合问题和全排序问题,使用回溯法对原创 2021-07-14 12:56:29 · 124 阅读 · 0 评论 -
LeetCode 3. 无重复字符的最长子串
LeetCode 3. 无重复字符的最长子串题目题解代码题目给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。原创 2021-07-09 13:45:57 · 46 阅读 · 0 评论 -
LeetCode 567. 字符串的排列
LeetCode 19. 删除链表的倒数第 N 个结点题目题解代码题目给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例 1:输入:[1,2,3,4,5]输出:此列表中的结点 3 (序列化形式:[3,4,5])返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。注意,我们返回了一个 ListNode 类型的对象 ans,这样:ans.val = 3, ans.next.val = 4, ans.next.nex原创 2021-07-09 13:13:11 · 65 阅读 · 0 评论 -
LeetCode 557. 反转字符串中的单词 III
LeetCode 557. 反转字符串中的单词 III题目题解代码题目给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例:输入:“Let’s take LeetCode contest”输出:“s’teL ekat edoCteeL tsetnoc”提示:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。题解利用空格将字符串中的单词分离,存储到新数组中,遍历数组中单词,调用单词内部反转的函数,最后加入新的字符串中比较好的方法,原创 2021-07-07 10:49:37 · 50 阅读 · 0 评论 -
LeetCode 344. 反转字符串
LeetCode 344. 反转字符串题目题解代码题目编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1:输入:[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]示例 2:输入:[“H”,“a”,“n”,“n”,“a”,“h”]输出:[“h原创 2021-07-07 10:36:11 · 39 阅读 · 0 评论