
一个角色可以赢得“ 再见
”,而无需参加“决斗”就可以获胜。算法的正确性不取决于您执行的特定对决。给定 任意 两个不同的索引 i 和 j
,您始终可以得出结论,排除其中之一是字典最小旋转的起始索引(除非 两者 都是 相同的 起始索引)
__字典最小旋转,在这种情况下,您拒绝哪一个旋转都没有关系。
按特定顺序执行决斗的原因是性能:通过确保一半的决斗只需要比较一个字符,其余一半的只需要比较两个字符来获得渐近线性时间,依此类推,直到最后一次决斗只需要比较字符串长度的一半即可。但是,这里和那里的单个奇数字符不会改变渐近复杂性,它只会使数学(和实现)更加复杂。长度为2
n +1的字符串仍然需要比长度2 n +1更少的“决斗” 。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)