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

如何编写函数生成1和-1交替的指定长度序列?

1与-1交替序列生成函数实现

核心逻辑

  • 序列首位固定为1,后续每一位与前一位符号相反
  • 可通过索引位的奇偶性直接计算对应值:从0开始计数的索引为偶数时取值1,为奇数时取值-1,计算效率更高,无需额外存储前一位状态

常用语言实现示例

Python 实现

返回数值列表版本

def get_alternating_seq(len: int) -> list[int]:
    return [1 if idx % 2 == 0 else -1 for idx in range(len)]

返回空格分隔字符串版本(匹配题目示例输出格式)

def get_alternating_seq(len: int) -> str:
    str_list = ["1" if idx % 2 == 0 else "-1" for idx in range(len)]
    return " ".join(str_list)

如果对性能要求不高,也可以用幂运算写法简化代码:

def get_alternating_seq(len: int) -> list[int]:
    return [(-1)**idx for idx in range(len)]

JavaScript 实现

function getAlternatingSeq(len) {
    return Array.from({length: len}, (_, idx) => idx % 2 === 0 ? 1 : -1).join(' ')
}

效果验证

  • 传入参数3,返回结果为1 -1 1
  • 传入参数5,返回结果为1 -1 1 -1 1

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.18 06:45:04