请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

长度计算位置

图片描述
这个res的计算可以放第一个逻辑分支里面吗?else里面只是删一次吧。每次循环都计算res是不是不太好

正在回答

插入代码

1回答

1

可以把 res 只放到第一个分支;


把 res 放到第一个分支并不会有复杂度级别的变化,整个算法还是 O(n) 的。我的逻辑思想是:在每轮循环中,首先根据问题需求调整滑动窗口,其次看当前滑窗长度是否更大。两步各司其职。


当然,你可以根据你喜欢的方式建立逻辑。只要是正确的,就 ok。


3

在这个课程的官方代码,我也给出了这个问题的若干其他实现,感兴趣可以参考:https://git.imooc.com/coding-82/coding-82/src/master/03-Using-Array/Course%20Code%20%28C++%29/08-Longest-Substring-Without-Repeating-Characters


但其实,他们都是 O(n) 的算法,没有复杂度上的改变。


继续加油!:)

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号