Java后端
·2024-01-07 算法
算法和数据结构 每日一题
一个简单题,确实触及到我java知识的盲区
StringBuilder的底层数据结构以及
append方法的底层操作和时间复杂度
toString的底层操作以及时间复杂度
我:在循环中使用了result =word.charAt(i);
时间复杂度,空间复杂度:O(n^2)
为什么这么差?为什么不是线性?
查阅底层中……
重复创建StringBuilder对象,重复复制:1k,2k,3k……nk,
重复toString……
StringBuilder的底层有个动态数组——ArrayList<Character>
欧!!!!!!原来如此,恍然大悟!
在for循环外创建StringBuilder,只需一个对象
for循环中append就行(O(1))
这样,便是降到线性
14
0
分享
操作
评论
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
