国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

LeetCode:劍指 Offer 58 - II. 左旋轉(zhuǎn)字符串

這篇具有很好參考價值的文章主要介紹了LeetCode:劍指 Offer 58 - II. 左旋轉(zhuǎn)字符串。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

??道阻且長,行則將至。??

??算法,不如說它是一種思考方式??


算法專欄: ????123


一、??劍指 Offer 58 - II. 左旋轉(zhuǎn)字符串

  • 題目描述:字符串的左旋轉(zhuǎn)操作是把字符串前面的若干個字符轉(zhuǎn)移到字符串的尾部。請定義一個函數(shù)實現(xiàn)字符串左旋轉(zhuǎn)操作的功能。比如,輸入字符串"abcdefg"和數(shù)字2,該函數(shù)將返回左旋轉(zhuǎn)兩位得到的結(jié)果"cdefgab"。
  • 來源:力扣(LeetCode)
  • 難度:簡單
  • 提示:
    1 <= k < s.length <= 10000
  • 示例 1:
    輸入: s = “abcdefg”, k = 2
    輸出: “cdefgab”

??解題

1.直接使用字符串的substring

就是直接截取前后子字符串拼接即可:

class Solution {
    public String reverseLeftWords(String s, int n) {
        return s.substring(n,s.length())+s.substring(0,n);
    }
}

LeetCode:劍指 Offer 58 - II. 左旋轉(zhuǎn)字符串

2.通過StringBuilder

使用可變字符串來編輯,先把整個字符串反轉(zhuǎn),再把兩段分別反轉(zhuǎn)就是答案了:

class Solution {
        public String reverseLeftWords(String s, int n) {
        StringBuilder ns=new StringBuilder(s);
        reverseString(ns,0,s.length()-1);

        reverseString(ns,0,s.length()-n-1);
        reverseString(ns,s.length()-n,s.length()-1);
        return ns.toString();
    }

    private static void reverseString(StringBuilder ns, int i, int length) {
        while (i<length){
            char tem= ns.charAt(i);
            ns.setCharAt(i,ns.charAt(length));
            ns.setCharAt(length,tem);
            i++;length--;
        }
    }
}

LeetCode:劍指 Offer 58 - II. 左旋轉(zhuǎn)字符串

3.使用字符數(shù)組

創(chuàng)建等長的字符串?dāng)?shù)組,從旋轉(zhuǎn)的點開始向后填進數(shù)組,到最后的位置返回到字符串第一個(取余吧),直到n個字符結(jié)束。

class Solution {
    public String reverseLeftWords(String s, int n) {
        char[]ns=new char[s.length()];
        for (int i = 0; i < s.length(); i++) {
            ns[i]=s.charAt((i+n)%s.length());
        }
        return new String(ns);
    }
}

知止而后有定,定而后能靜,靜而后能安,安而后能慮,慮而后能得。
物有本末,事有終始。知所先后,則近道矣?!洞髮W(xué)》

返回第一頁。?


?物有本末,事有終始,知所先后。??

LeetCode:劍指 Offer 58 - II. 左旋轉(zhuǎn)字符串

???????我的CSDN???????? 文章來源地址http://www.zghlxwxcb.cn/news/detail-430584.html

到了這里,關(guān)于LeetCode:劍指 Offer 58 - II. 左旋轉(zhuǎn)字符串的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【代碼隨想錄 | Leetcode | 第十一天】字符串 | 反轉(zhuǎn)字符串 | 反轉(zhuǎn)字符串 II | 替換空格 | 反轉(zhuǎn)字符串中的單詞 | 左旋轉(zhuǎn)字符串

    【代碼隨想錄 | Leetcode | 第十一天】字符串 | 反轉(zhuǎn)字符串 | 反轉(zhuǎn)字符串 II | 替換空格 | 反轉(zhuǎn)字符串中的單詞 | 左旋轉(zhuǎn)字符串

    歡迎來到小K的Leetcode|代碼隨想錄|專題化專欄,今天將為大家?guī)碜址畘反轉(zhuǎn)字符串 | 反轉(zhuǎn)字符串 II | 替換空格 | 反轉(zhuǎn)字符串中的單詞 | 左旋轉(zhuǎn)字符串的分享 ? ?題目鏈接點這里 編寫一個函數(shù),其作用是將輸入的字符串反轉(zhuǎn)過來。輸入字符串以字符數(shù)組 s 的形式給出。不要

    2024年02月15日
    瀏覽(54)
  • LeetCode:劍指Offer 05. 替換空格 (字符串)

    LeetCode:劍指Offer 05. 替換空格 (字符串)

    ??道阻且長,行則將至。?? ??算法,不如說它是一種思考方式?? 算法專欄: ????123 上一題:344. 反轉(zhuǎn)字符串 本文速覽: ??劍指 Offer 05 . 替換空格 - 簡單 ??151. 反轉(zhuǎn)字符串中的單詞-中等 題目描述 :請實現(xiàn)一個函數(shù),把字符串 s 中的每個空格替換成\\\"%20\\\"。 來源:力扣(

    2023年04月11日
    瀏覽(22)
  • (字符串 ) 劍指 Offer 05. 替換空格 ——【Leetcode每日一題】

    (字符串 ) 劍指 Offer 05. 替換空格 ——【Leetcode每日一題】

    難度:簡單 請實現(xiàn)一個函數(shù),把字符串 s 中的每個 空格 替換成 “ %20 ”。 示例 1: 輸入:s = “We are happy.” 輸出:“We%20are%20happy.” 限制 : 0 = s 的長度 = 10000 ??思路:雙指針法 如果想把這道題目做到 極致 ,就不要只用額外的輔助空間了! 首先擴充數(shù)組到每個空格替換

    2024年02月08日
    瀏覽(30)
  • Leetcode-每日一題【劍指 Offer 20. 表示數(shù)值的字符串】

    Leetcode-每日一題【劍指 Offer 20. 表示數(shù)值的字符串】

    ? 請實現(xiàn)一個函數(shù)用來判斷字符串是否表示 數(shù)值 (包括整數(shù)和小數(shù))。 數(shù)值 (按順序)可以分成以下幾個部分: 若干空格 一個? 小數(shù) ?或者? 整數(shù) (可選)一個? \\\'e\\\' ?或? \\\'E\\\' ?,后面跟著一個? 整數(shù) 若干空格 小數(shù) (按順序)可以分成以下幾個部分: (可選)一個符號

    2024年02月13日
    瀏覽(19)
  • 【LeetCode-中等】劍指 Offer 67. 把字符串轉(zhuǎn)換成整數(shù)(詳解)

    【LeetCode-中等】劍指 Offer 67. 把字符串轉(zhuǎn)換成整數(shù)(詳解)

    寫一個函數(shù) StrToInt,實現(xiàn)把字符串轉(zhuǎn)換成整數(shù)這個功能。不能使用 atoi 或者其他類似的庫函數(shù)。 首先,該函數(shù)會根據(jù)需要丟棄無用的開頭空格字符,直到尋找到第一個非空格的字符為止。 當(dāng)我們尋找到的第一個非空字符為正或者負號時,則將該符號與之后面盡可能多的連續(xù)

    2024年02月15日
    瀏覽(25)
  • (搜索) 劍指 Offer 38. 字符串的排列 ——【Leetcode每日一題】

    (搜索) 劍指 Offer 38. 字符串的排列 ——【Leetcode每日一題】

    難度:中等 輸入一個字符串,打印出該字符串中字符的所有排列。 你可以以任意順序返回這個字符串?dāng)?shù)組,但里面 不能有重復(fù)元素 。 示例: 輸入:s = “abc” 輸出:[“abc”,“acb”,“bac”,“bca”,“cab”,“cba”] 限制 : 1 = s 的長度 = 8 ??思路:回溯 可以直接 暴力窮舉 ,但

    2024年02月12日
    瀏覽(29)
  • 替換空格&&反轉(zhuǎn)字符串中的單詞(LeetCode 劍指offer05 && 151)

    題目 劍指 Offer 05. 替換空格? 思路 遍歷,使用新的字符串來接原字符串,如為空格,則加入%20,否則加入原字符串。? 不過看了題解有另一種解法,由于空格轉(zhuǎn)化為%20,設(shè)計到原字符存儲空間的增加,因此先計算出需要增加的空間后。再使用雙指針,從后往前遍歷,這里畫的

    2024年02月16日
    瀏覽(19)
  • (其他) 劍指 Offer 67. 把字符串轉(zhuǎn)換成整數(shù) ——【Leetcode每日一題】

    (其他) 劍指 Offer 67. 把字符串轉(zhuǎn)換成整數(shù) ——【Leetcode每日一題】

    難度:中等 寫一個函數(shù) StrToInt,實現(xiàn)把字符串轉(zhuǎn)換成整數(shù)這個功能。不能使用 atoi 或者其他類似的庫函數(shù)。 首先,該函數(shù)會根據(jù)需要丟棄無用的開頭空格字符,直到尋找到第一個非空格的字符為止。 當(dāng)我們尋找到的第一個非空字符為正或者負號時,則將該符號與之后面盡可

    2024年02月09日
    瀏覽(27)
  • (動態(tài)規(guī)劃) 劍指 Offer 48. 最長不含重復(fù)字符的子字符串 ——【Leetcode每日一題】

    (動態(tài)規(guī)劃) 劍指 Offer 48. 最長不含重復(fù)字符的子字符串 ——【Leetcode每日一題】

    難度:中等 請從字符串中找出一個最長的不包含重復(fù)字符的子字符串,計算該最長子字符串的長度。 示例 1: 輸入: “abcabcbb” 輸出: 3 解釋: 因為無重復(fù)字符的最長子串是 “abc”,所以其長度為 3。 示例 2: 輸入: “bbbbb” 輸出: 1 解釋: 因為無重復(fù)字符的最長子串是 “b”,所

    2024年02月11日
    瀏覽(26)
  • 劍指 Offer —— 數(shù)組和字符串

    劍指 Offer —— 數(shù)組和字符串

    在一個 n * m 的二維數(shù)組中: 每一行都按照從左到右 非遞減 的順序排序 每一列都按照從上到下 非遞減 的順序排序 請完成一個高效的函數(shù),輸入這樣的一個 二維數(shù)組和一個整數(shù) ,判斷 數(shù)組中是否含有該整數(shù) 。 示例: 現(xiàn)有矩陣 matrix 如下: 給定 target = 5 ,返回 true 。 給定

    2023年04月24日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包