[剑指offer]面试题第[58-2]题[JAVA][左旋转字符串][拼接]
生活随笔
收集整理的這篇文章主要介紹了
[剑指offer]面试题第[58-2]题[JAVA][左旋转字符串][拼接]
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【問題描述】[中等]
【解答思路】
1. 字符串切片
應用字符串切片函數,可方便實現左旋轉字符串。
時間復雜度:O(N) 空間復雜度:O(N)
2. 列表遍歷拼接
時間復雜度:O(N) 空間復雜度:O(N)
3. 字符串遍歷拼接
時間復雜度:O(N) 空間復雜度:O(N)
【總結】
1.效率分析
2.字符串拼接
使用‘+’進行字符串拼接時,Java實際上是通過new出一個StringBuilder對象,然后進行append操作,最后通過toString方法返回String對象完成的,會造成內存資源的額外浪費。
所以如果在循環體中,字符串的連接方式,推薦使用StringBuilder的append方法進行擴展,而不要使用‘+’。
不是在循環體中的話,可以使用‘+’,代碼更加簡潔和可讀,如方法一的代碼。
3.字符串拼接題目速度 切割函數>列表(StringBuilder) >字符串(String)
轉載鏈接:https://leetcode-cn.com/problems/zuo-xuan-zhuan-zi-fu-chuan-lcof/solution/mian-shi-ti-58-ii-zuo-xuan-zhuan-zi-fu-chuan-qie-p/
總結
以上是生活随笔為你收集整理的[剑指offer]面试题第[58-2]题[JAVA][左旋转字符串][拼接]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 巴伦周刊:“物联网”正走向死胡同
- 下一篇: 英利1500伏光伏组件系列亮相美国