如何从给定数组中生成符合要求的三元组?
最简单实现方案(以Python为例)
观察你给出的输出规则,三个三元组分别对应原数组元素的0次方、2次方、3次方,直接用列表推导式一行即可完成,没有任何额外依赖:
result = [tuple(x ** k for x in [1,2,3]) for k in [0, 2, 3]]
运行后直接得到你需要的结果:[(1, 1, 1), (1, 4, 9), (1, 8, 27)]
如果后续需要调整幂次规则,只要修改第二个遍历的[0,2,3]数组即可,灵活度很高。
其他编程语言也可以用类似的双层遍历逻辑实现,都是最基础的迭代操作,复杂度只有O(n*m)(n是原数组长度,m是幂次数量),性能足够。
内容的提问来源于stack exchange,提问作者user17422898
相关产品推荐
相关产品推荐

