目录
让我们看看各种输入输出场景 -
下面程序中使用的方法如下
示例
输出
首页 后端开发 C++ 在C++中以升序交替方式重新排列奇数和偶数值

在C++中以升序交替方式重新排列奇数和偶数值

Sep 12, 2023 pm 06:45 PM
排序 升序 交替

在C++中以升序交替方式重新排列奇数和偶数值

我们得到一个包含正数和负数的整数类型数组,比方说,任意给定大小的 arr[] 。任务是以这样的方式重新排列数组:当数组中的最低元素为奇数时,数组中的元素将以奇数在前、偶数在前的方式重新排列 第二种方式。当数组中的最低元素为偶数时,数组的元素将以偶数第一、奇数第二的方式重新排列,如果偶数/奇数元素的数量大于奇数/偶数元素的数量,则它将放置 0 和打印结果。

让我们看看各种输入输出场景 -

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

输出− 以交替方式按升序排列的奇数和偶数值是:1 2 1 2 5 4。

解释- 我们得到一个整数类型数组。现在我们将检查数组中最小的元素,即 1 是奇数,因此元素将首先排列在奇数中, 甚至第二种方式,即 1 2 1 2 5 4 是最终输出。

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

输出− 以交替方式按升序重新排列奇数和偶数值是:2 3 4 0 6 0

解释 − 我们得到一个整数类型数组。现在我们将检查数组中最小的元素,即 2 是偶数,因此 elem

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

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

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

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

  • 在函数 Rearrangement(arr, size) 内

    • 创建两个变量“vec_1”和“vec_2”作为存储的向量类型整数类型数据。

    • 创建一个整数类型的临时变量 temp 并将其设置为 0。

    • 声明另一个变量bool 类型作为检查,并将其设置为 FALSE。

    • 开始从 i 到 0 的 FOR 循环,直到 i 小于 size。在循环内部,检查 IF arr[i] % 2 = 0,然后将 arr[i] 推入 vec_1。否则,将 arr[i] 推入 vec_2。

    • 将整数变量声明为 i 和 j 为 0。检查 IF arr[0] % 2 = 0,然后将检查设置为 true。

    • 当温度小于大小时启动。在循环内,检查 IF check = true,然后将 arr[temp++] 设置为 vec_1[i++] 并将 check 设置为 !check。否则,将 arr[temp++] 转换为 vec_2[j++] 并将检查设置为 !check。

  • 打印结果。

    li>

示例

#include <bits/stdc++.h>
using namespace std;
void Rearrangement(int arr[], int size){
   vector<int> vec_1, vec_2;
   int temp = 0;
   bool check = false;
   for(int i = 0; i < size; i++){
      if(arr[i] % 2 == 0){
         vec_1.push_back(arr[i]);
      }
      else{
         vec_2.push_back(arr[i]);
      }
   }
   int i = 0;
   int j = 0;
   if(arr[0] % 2 == 0){
      check = true;
   }
   while(temp < size){
      if(check == true){
         arr[temp++] = vec_1[i++];
         check = !check;
      }
      else{
         arr[temp++] = vec_2[j++];
         check = !check;
      }
   }
}
int main(){
   int arr[] = { 1, 1, 2, 2, 5, 4 };
   int size = sizeof(arr) / sizeof(int);
   //sort an array
   sort(arr, arr + size);
   cout<<"Rearrangement of Odd and Even values in Alternate Fashion in Ascending Order is: ";
   Rearrangement(arr, size);
   for(int i = 0; i < size; i++){
      cout << arr[i] << " ";
   }
   return 0;
}
登录后复制

输出

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

Rearrangement of Odd and Even values in Alternate Fashion in Ascending Order is: 1 2 1 2 5 4
登录后复制

以上是在C++中以升序交替方式重新排列奇数和偶数值的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何在Windows 11/10中按拍摄日期对照片进行排序 如何在Windows 11/10中按拍摄日期对照片进行排序 Feb 19, 2024 pm 08:45 PM

本文将介绍如何在Windows11/10中根据拍摄日期对图片进行排序,同时探讨如果Windows未按日期排序图片应该如何处理。在Windows系统中,合理整理照片对于方便查找图像文件至关重要。用户可以根据不同的排序方式(如日期、大小和名称)来管理包含照片的文件夹。此外,还可以根据需要设置升序或降序排列,以便更灵活地组织文件。如何在Windows11/10中按拍摄日期对照片进行排序要按在Windows中拍摄的日期对照片进行排序,请执行以下步骤:打开图片、桌面或放置照片的任何文件夹在功能区菜单中,单

如何在Outlook中按发件人、主题、日期、类别、大小对电子邮件进行排序 如何在Outlook中按发件人、主题、日期、类别、大小对电子邮件进行排序 Feb 19, 2024 am 10:48 AM

Outlook提供了许多设置和功能,可帮助您更有效地管理工作。其中之一是排序选项,可让您根据需要对电子邮件进行分类。在这个教程中,我们将学习如何利用Outlook的排序功能,根据发件人、主题、日期、类别或大小等条件对电子邮件进行整理。这将让您更轻松地处理和查找重要信息,提高工作效率。MicrosoftOutlook是一个功能强大的应用程序,可以方便地集中管理您的电子邮件和日历安排。您可以轻松地发送、接收和组织电子邮件,而内置的日历功能也让您能够方便地跟踪您即将面临的活动和约会。如何在Outloo

使用Python实现XML数据的筛选和排序 使用Python实现XML数据的筛选和排序 Aug 07, 2023 pm 04:17 PM

使用Python实现XML数据的筛选和排序引言:XML是一种常用的数据交换格式,它以标签和属性的形式存储数据。在处理XML数据时,我们经常需要对数据进行筛选和排序。Python提供了许多有用的工具和库来处理XML数据,本文将介绍如何使用Python实现XML数据的筛选和排序。读取XML文件在开始之前,我们需要先读取XML文件。Python有许多XML处理库,

PHP开发:如何实现表格数据排序和分页功能 PHP开发:如何实现表格数据排序和分页功能 Sep 20, 2023 am 11:28 AM

PHP开发:如何实现表格数据排序和分页功能在进行Web开发中,处理大量数据是一项常见的任务。对于需要展示大量数据的表格,通常需要实现数据排序和分页功能,以提供良好的用户体验和优化系统性能。本文将介绍如何使用PHP实现表格数据的排序和分页功能,并给出具体的代码示例。排序功能实现在表格中实现排序功能,可以让用户根据不同的字段进行升序或降序排序。以下是一个实现表格

C++程序:按字母顺序重新排列单词的位置 C++程序:按字母顺序重新排列单词的位置 Sep 01, 2023 pm 11:37 PM

在这个问题中,一个字符串被作为输入,我们必须按字典顺序对字符串中出现的单词进行排序。为此,我们为字符串中的每个单词(之间用空格区分)分配一个从1开始的索引,并以排序索引的形式获得输出。String={“Hello”,“World”}“Hello”=1“World”=2由于输入字符串中的单词已按字典顺序排列,因此输出将打印为“12”。让我们看看一些输入/结果场景-假设输入字符串中的所有单词都相同,让我们看看结果-Input:{“hello”,“hello”,“hello”}Result:3获得的结

Java中的Arrays.sort()方法如何按照自定义比较器对数组进行排序? Java中的Arrays.sort()方法如何按照自定义比较器对数组进行排序? Nov 18, 2023 am 11:36 AM

Java中的Arrays.sort()方法如何按照自定义比较器对数组进行排序?在Java中,Arrays.sort()方法是一个非常有用的方法,可以对数组进行排序。默认情况下,该方法会按照升序排序。但是有时候,我们需要按照自己定义的规则对数组进行排序。这时,就需要用到自定义比较器(Comparator)。自定义比较器是一个实现了Comparator接口的类,

wps怎么排序成绩高低 wps怎么排序成绩高低 Mar 20, 2024 am 11:28 AM

在我们的工作中,经常会用到wps软件,wps软件处理数据的方式方法是非常多的,而且函数功能也是非常强大的,我们经常用函数来求平均值,求汇总等,可以说只要是统计数据能用的方法,wps软件库里都已经为大家准备好了,下面我们要介绍的是wps怎么排序成绩高低的操作步骤,看完以后大家可以借鉴一下经验。1、首先打开需要排名的表格。如下图所示。  2、然后输入公式=rank(B2,B2:B5,0),一定要输入0。如下图所示。  3、输入完公式以后,按下电脑键盘上的F4键,这步操作是为了让相对引用变为绝对引用。

Java开发中如何优化集合排序去重性能 Java开发中如何优化集合排序去重性能 Jul 02, 2023 am 11:25 AM

Java开发中,集合排序和去重是常见的需求。然而,在处理大数据集合时,性能往往会成为一个问题。本文将介绍一些优化技巧,帮助提升集合排序和去重的性能。一、使用合适的数据结构在Java中,最常用的数据结构是ArrayList和HashSet。ArrayList适用于需要保持元素顺序的情况,而HashSet则适用于需要去重的情况。在排序和去重的场景中,我们可以使用

See all articles