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

如何将位字符串中1的索引从0起始调整为1起始?

将位字符串中1的索引改为从1起始的解决方案

当然可以,只需要在提取到的0起始索引值基础上加1即可,以下是具体实现示例:

假设原代码示例(0起始):

bit_string = "0110101"
# 提取0起始的1的索引
zero_based_indices = [idx for idx, bit in enumerate(bit_string) if bit == '1']
print(zero_based_indices)  # 输出: [1, 2, 4, 6]

修改后的代码(1起始):

bit_string = "0110101"
# 每个索引值加1,转为1起始
one_based_indices = [idx + 1 for idx, bit in enumerate(bit_string) if bit == '1']
print(one_based_indices)  # 输出: [2, 3, 5, 7]

核心逻辑说明:

  • 用enumerate()遍历位字符串时,默认返回的索引是0起始的,给筛选出的每个索引值加1,就能直接得到1起始的索引结果。
  • 如果你的代码是其他语言(比如Java、C++),逻辑完全一致:在获取到的索引值基础上执行+1操作即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 23:40:37