#include<stdio.h>
#include <iostream>
#include <algorithm>
#include<time.h>
#include<stdlib.h>
#define SIZE 10
using namespace std;
void adjust(int array[],int n); //调整数组元素的函数声明
void main()
{
int array[SIZE],i;
srand(time(NULL)); //获取随机种子
for(i=0;i<SIZE;i++) //为数组元素赋值,以生成数组
{
array[i]=rand()%100+1;
}
printf("Before adjust array,the array's elements are:\n");
for(i=0;i<SIZE;i++)
{
printf("%d ",array[i]);
}
printf("\n");
adjust(array,SIZE); //调用调整数组元素的函数
printf("After adjust array,the array's elements are:\n");
for(i=0;i<SIZE;i++)
{
printf("%d ",array[i]);
}
printf("\n");
}
void adjust(int array[],int n) //调整数组元素的函数的定义
{
int i=0,j=n-1,temp;
while(i<j)
{
if(array[i]%2!=0)i++;
if(array[j]%2==0)j--;
if(i<j)
swap(array[i],array[j]);
}
}
数组左边奇数右边偶数算法O(n)
猜你喜欢
转载自blog.csdn.net/qq_43488547/article/details/100764844
今日推荐
周排行