You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

数组与其旋转序列最大Hamming Distance的O(n)实现正确性咨询

你的实现并不正确,无法覆盖所有场景

你的代码核心逻辑是返回数组去重后的元素总数,该数值和数组与其旋转序列的最大汉明距离没有必然的等价关系,存在大量反例可以推翻该逻辑:

反例1

  • 测试数组:[1,2,1,3],长度n=4
  • 你的代码返回值:去重后元素总数为3
  • 实际最大汉明距离:将数组左旋转1位得到序列[2,1,3,1],和原数组逐位对比所有位置元素均不相同,汉明距离为4,远大于你的代码返回值。

反例2

  • 测试数组:[1,1,2,2,3,3],长度n=6
  • 你的代码返回值:去重后元素总数为3
  • 实际最大汉明距离:将数组左旋转3位得到序列[2,3,3,1,1,2],和原数组逐位对比所有位置元素均不相同,汉明距离为6,是你代码返回值的2倍。

逻辑错误根源

你错误地将数组去重后的元素数量等价为最大可达到的汉明距离。实际上汉明距离只要求对应位置的元素不同,只要旋转后的序列能满足每个位置的值都和原序列对应位置不一致,哪怕数组的不同元素总数极少,也能达到等于数组长度的最大汉明距离,和元素去重后的总数没有直接关联。

内容的提问来源于stack exchange,提问作者TTiM3R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 13:27:02