Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 如何降低此代码的时间复杂性_Arrays_Ruby_Time Complexity - Fatal编程技术网

Arrays 如何降低此代码的时间复杂性

Arrays 如何降低此代码的时间复杂性,arrays,ruby,time-complexity,Arrays,Ruby,Time Complexity,arr1是一个有3个元素的数组,第一个是arr2中的元素数,第二个是旋转数,第三个是输入数。我想按用户从给定的输入索引打印arry2的元素。第二个输入数组是包含数组元素的输入数组 arr1 =gets.strip.split(' ').map(&:to_i) arr2 = gets.strip.split(' ').map(&:to_i) q=arr1[2] count= arr1[1] count.times do arr2=arr2.reverse.rotate.re

arr1是一个有3个元素的数组,第一个是arr2中的元素数,第二个是旋转数,第三个是输入数。我想按用户从给定的输入索引打印arry2的元素。第二个输入数组是包含数组元素的输入数组

arr1 =gets.strip.split(' ').map(&:to_i)
arr2 = gets.strip.split(' ').map(&:to_i)

q=arr1[2]
count= arr1[1]

count.times do
  arr2=arr2.reverse.rotate.reverse
end

for i in 0..q-1 do
  i = gets.strip.to_i
  puts "#{arr2[i]}\n"
end
接受一个参数,该参数是要旋转的元素数。这个数字可以是负数,以便向另一个方向旋转,因此

count.times do
  arr2=arr2.reverse.rotate.reverse
end
它在每次迭代中复制数组3次,可以替换为

arr2 = arr2.rotate(-count)

您能否为
arr1
arr2
添加一个示例以及预期的输出?叙述内容几乎不可读。如果我知道它应该说什么,我会把它修好,但恐怕我不知道。请你把问题编辑清楚,注意标点、拼写等?我知道你不是以英语为母语的人,这没关系,但我希望你能说得更清楚。