zoukankan      html  css  js  c++  java
  • 14 调整数组顺序使奇数位于偶数前面

    输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分

    C++:

    1 void reOrderArray(vector<int> &array) {
    2     int k = 0 ;
    3     for(int i = 0 ; i < array.size() ; i++){
    4         if (array[i] % 2 == 1){
    5             swap(array[k++] , array[i]) ;
    6         }
    7     }
    8 }

    输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,

    并保证奇数和奇数,偶数和偶数之间的相对位置不变。

    C++:

     1 class Solution {
     2 public:
     3     void reOrderArray(vector<int> &array) {
     4         int oddNum = 0 ;
     5         for(int a : array){
     6             if (a % 2 == 1){
     7                 oddNum++ ;
     8             }
     9         }
    10         int i = 0 ;
    11         int j = oddNum ;
    12         vector<int> copy = array ;
    13         for(int num : copy){
    14             if (num % 2 == 1){
    15                 array[i++] = num ;
    16             }else{
    17                 array[j++] = num ;
    18             }
    19         }
    20     }
    21 };
  • 相关阅读:
    A
    快速幂
    思维+LCA
    补题
    Manacher-马拉车算法
    AC自动机
    欢迎来怼-Alpha周(2017年10月19)贡献分配规则和分配结果
    欢迎来怼--第二十一次Scrum会议
    作业要求 20171026 每周例行报告
    Alpha发布-----欢迎来怼团队
  • 原文地址:https://www.cnblogs.com/mengchunchen/p/8930981.html
Copyright © 2011-2022 走看看