重新排列数组,使得偶数位置的元素大于奇数位置的元素(C++)

重新排列数组,使得偶数位置的元素大于奇数位置的元素(c++)

我们得到一个包含正数和负数的整数类型数组,比方说,任意给定大小的 arr[] 。任务是以这样的方式重新排列数组,使得偶数位置或索引处的所有元素都应大于奇数位置或索引处的元素,并且打印结果。

让我们看看这个的各种输入输出场景 –

输入− int arr[] = {2, 1, 4, 3 , 6, 5, 8, 7}

输出− 排列前的数组:2 1 4 3 6 5 8 7重新排列数组,使得偶数位置大于奇数位置: 1 2 3 4 5 6 7 8

解释− 我们得到一个大小为 8 的整数数组,其中包含正数和负面因素。现在,我们将数组重新排列,使得偶数位置的所有元素都大于奇数位置的元素,执行此操作后形成的数组为 1 2 3 4 5 6 7 8。

输入− int arr[] = {-3, 2, -4, -1}

输出− 排列前的数组:- 3 2 -4 -1重新排列一个数组,使偶数位置大于奇数: -4 -3 -1 2

解释 – 我们得到一个大小为 8 的整数数组,其中包含正数和负面元素。现在,我们将数组重新排列,使得偶数位置的所有元素都大于奇数位置的元素,执行此操作后形成的数组为-4 -3 -1 2。

立即学习“C++免费学习笔记(深入)”;

下面的程序使用的方法如下

输入一个整型元素数组,计算数组的大小。

li>

通过将数组和数组的大小传递给排序函数,使用 C++ STL 的排序方法对数组进行排序。

声明一个整型变量并通过调用函数 Rearrangement(arr, size) 来设置它

在函数 Rearrangement(arr, size) 内

声明一个整数类型数组,假设 ptr[size] 的大小与数组 arr[size] 相同

声明临时整数类型变量,即第一个为 0 和最后到大小-1。

从 i 到 0 开始循环 FOR,直到 i 小于数组的大小。在循环内部,检查 IF (i + 1) % 2 等于 0,然后将 ptr[i] 设置为 arr[last–]。

ELSE,设置 ptr[i ] 到 arr[first++]。

打印结果。

示例

#include using namespace std;void Rearrangement(int* arr, int size){   int ptr[size];   int first = 0;   int last = size - 1;   for (int i = 0; i < size; i++){      if((i + 1) % 2 == 0){         ptr[i] = arr[last--];      }      else{         ptr[i] = arr[first++];      }   }}int main(){   //input an array   int arr[] = {2, 1, 4, 3, 6, 5, 8, 7};   int size = sizeof(arr) / sizeof(arr[0]);   //print the original Array   cout<<"Array before Arrangement: ";   for (int i = 0; i < size; i++){      cout << arr[i] << " ";   }   //sort an Array   sort(arr, arr + size);   //calling the function to rearrange the array   Rearrangement(arr, size);   //print the array after rearranging the values   cout<<"nRearrangement of an array such that even positioned are greater than odd is: ";   for(int i = 0; i < size; i++){      cout<< arr[i] << " ";   }   return 0;}

输出

如果我们运行上面的代码,它将生成以下输出

Array before Arrangement: 2 1 4 3 6 5 8 7Rearrangement of an array such that even positioned are greater than odd is: 1 2 3 4 5 6 7 8

以上就是重新排列数组,使得偶数位置的元素大于奇数位置的元素(C++)的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1444116.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月17日 21:01:42
下一篇 2025年12月17日 21:01:57

相关推荐

  • 在C/C++中的数组?

    数组是相同类型元素的顺序集合。数组用于存储数据的集合,但将数组视为相同类型的变量的集合通常更有用。 而不是声明单个变量,例如 number0、number1 、 … 和 number99 ,您可以声明一个数组变量(例如数字),并使用numbers[0]、numbers[1] 和&#823…

    2025年12月17日
    000
  • 深入探究JavaScript内置对象的功能和特性

    深入解析JS内置对象的功能与特点 JavaScript是一门基于对象的编程语言,它提供了许多内置对象,这些对象拥有各种丰富的功能和特点。在本文中,我们将深入解析一些常用的内置对象,并给出相应的代码示例。 WeShop唯象 WeShop唯象是国内首款AI商拍工具,专注电商产品图片的智能生成。 113 …

    2025年11月8日 web前端
    000

发表回复

登录后才能评论
关注微信