Redian新闻
>
Reverse String 有 O(logn)的方法么?
avatar
Reverse String 有 O(logn)的方法么?# JobHunting - 待字闺中
c*8
1
大家好,reverse string: abcd --> dcba. 其实方法很简单,就是two pointers,一
个从头开始扫,一个从尾开始扫,然后swap就行。复杂度为:O(n)。但被问及是否可以
做到O(logn),我怎么想也没有想出O(logn)的方法,就算是divide and conquer 或者
类似 binary search的方法,最后的复杂度也是O(n)。因为递推公式是:T(n)=2T(n/2)
+1。
想问问大家有没有O(logn)的算法?谢啦。
avatar
x*g
2
不懂帮顶~觉得怎么都要扫一遍呀
avatar
l*h
3
题目是你的具体例子还是泛指reverse任意长的string?
avatar
s*x
4
这么明显的最优也得O(n)的问题还在找更优解法。
avatar
n*n
5
问是否有?回答没有不就可以了?

2)

【在 c****8 的大作中提到】
: 大家好,reverse string: abcd --> dcba. 其实方法很简单,就是two pointers,一
: 个从头开始扫,一个从尾开始扫,然后swap就行。复杂度为:O(n)。但被问及是否可以
: 做到O(logn),我怎么想也没有想出O(logn)的方法,就算是divide and conquer 或者
: 类似 binary search的方法,最后的复杂度也是O(n)。因为递推公式是:T(n)=2T(n/2)
: +1。
: 想问问大家有没有O(logn)的算法?谢啦。

avatar
c*8
6
泛指任意长度的string

【在 l****h 的大作中提到】
: 题目是你的具体例子还是泛指reverse任意长的string?
avatar
c*8
7
我是觉得没有,我跟他说没有。他说再想想。最后我其实答了divide and conquer,因
为我实在想不到O(logn)的方法,最后他居然满意了。但是divide and conquer是O(n)
啊。

【在 n******n 的大作中提到】
: 问是否有?回答没有不就可以了?
:
: 2)

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。