将元素移到数组右侧

时间:2017-01-11 17:21:59

标签: algorithm

我有一个练习,可以为您提供数组输入,并希望您将所有元素都移到右侧。

Input         |       Output
1 2 3 4       |       4 1 2 3

我该怎么做? 代码不是必需的只是算法就足够了   我尝试的只有{n是数组的长度)

for (int i = 0; i <n/2; ++i)
    {
        swap(ar[i],ar[i+1]);
    }

1 个答案:

答案 0 :(得分:0)

交换相邻元素的想法是正确的。你需要经历所有这些,而不是上半场。类似的东西:

for i = n - 2 downto 0
    swap(a[i], a[i + 1])

会起作用。