【发布时间】:2019-07-17 16:39:18
【问题描述】:
我知道这很容易,但我不明白我应该怎么做。
1 23 29 18 43 20 5
到
5 1 23 29 18 43 20
我认为我们应该使用for循环:
for (int i = 0; i < numbers.Count - 1; i++)
{
}
但我不知道该怎么做。类似 numbers[i] = numbers[i - 1] 但它不起作用。我认为有一些我想念的 if 检查。
【问题讨论】:
-
使用临时变量,代码应该执行以下操作: temp = array[0], array[0] = array[6], array[6] = array[5], array[5] =数组[4],数组[4] = 数组[3],数组[3] = 数组[2],数组[2] = 数组[1],数组[1] = 温度
-
让我问你一个问题:你认为
numbers[i] = numbers[i + 1]是做什么的?它会将数组元素复制/移动到左侧还是右侧?你为什么会这样想? (我认为数组索引 0 在左边,最大数组索引在右边) -
@elgonzo 我认为它会将数组元素向右移动,但我错了。现在我明白为什么我应该使用 i - 1 (它会将数组元素移动到之前的位置)