我有一个20000整数元素的数组.
我想创建一个新数组,其中旧数组中的每个元素都添加了一个修改号.在一个小样本数组上,它看起来像这样:
old_array = [2,5,6,8] modifying_number = 3 new_array = [5,8,9,11]
有没有比这样的迭代更有效的方法?
class Array def addition_by(x) collect { |n| n + x } end end
解决方法
N次迭代是该算法的最小复杂性.
您可以通过使用collect修改源数组来实现它(如果由于某些原因不需要源数组).复杂性将是相同的,不会创建额外的大对象.