c_cpp 以最大最小形式重新排列数组 - 设置1

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 以最大最小形式重新排列数组 - 设置1相关的知识,希望对你有一定的参考价值。

#include <iostream>
using namespace std;

int rearrange(int a[], int n){
    int b[n];
    int s = 0, e = n-1;
    bool flag = true;

    for (int i =0;i < n;i++){
        if (flag)
            b[i] = a[e--];
        else
            b[i] = a[s++];
        flag = !flag;
    }

    for(int i = 0; i < n; i++)
        cout << b[i] << "  ";
}

int main(){
    int n;
    cout << "Enter no.of elements:";
    cin >> n;
    int a[n];
    for(int i = 0;i < n; i++)
        cin >> a[i];

    rearrange(a, n);
}
#include <iostream>
using namespace std;

int *rearrange(int a[], int n){
    int *b = new int[n];
    int s = 0, e = n-1;
    bool flag = true;

    for (int i =0;i < n;i++){
        if (flag)
            b[i] = a[e--];
        else
            b[i] = a[s++];
        flag = !flag;
    }
    return b;
}

int main(){
    int n;
    cout << "Enter no.of elements:";
    cin >> n;
    int a[n];
    for(int i = 0;i < n; i++)
        cin >> a[i];

    int *b = rearrange(a, n);
    for(int i = 0; i < n; i++)
        cout << b[i] << "  ";
}

以上是关于c_cpp 以最大最小形式重新排列数组 - 设置1的主要内容,如果未能解决你的问题,请参考以下文章

通过重新排列数组来最大化数组绝对差的总和

LeetCode 1846. 减小和重新排列数组后的最大元素

c_cpp 使用最少比较次数的数组的最大值和最小值

c_cpp 使用最少比较次数的数组的最大值和最小值

从最小堆切换到最大堆而不重新排列内部数组

LeetCode 1470. 重新排列数组 / 654. 最大二叉树 / 998. 最大二叉树 II