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

    调整数组顺序使奇数位于偶数前面

     

    题目:输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求时间复杂度为O(n)。

    还是利用两个量从两边扫....代码如下:

     

    //调整数组顺序使奇数位于偶数前面
    #include<iostream>
    using namespace std;
    void make_order(int data[],int len){
        if(len<=0 || data==NULL)
            return;
        else{
            int begin=0,end=len-1;
            while(begin!=end){
                if((data[begin]&1)!=0){         //&优先级低于!=
                    begin++;
                    continue;
                }
                if((data[end]&1)==0){
                    end--;
                    continue;
                }
                int temp=data[begin];
                data[begin]=data[end];
                data[end]=temp;
            }
        }
     
    }
     
    int main(void){
        int a[]={3,4,5,6,7,8,9,10,1,2};
        for(int i=0;i<=9;i++)
            cout<<a[i]<<" ";
        cout<<endl;
        make_order(a,10);
        for(int i=0;i<=9;i++)
            cout<<a[i]<<" ";
        cout<<endl;
        system("pause");
        return 0;
    }
  • 相关阅读:
    JS模板引擎 :ArtTemplate (2)
    JS模板引擎 :ArtTemplate (1)
    nodeJs 初探 ~
    javascript高级函数
    Js高程笔记->引用类型
    html5离线存储
    (摘抄)HTTP 协议详解
    cordova /phonegap 自定义插件
    phonegap/cordova常用命令
    phonegap上传以及下载图片
  • 原文地址:https://www.cnblogs.com/xiao-wei-wei/p/3354888.html
Copyright © 2011-2022 走看看