65,211
社区成员
发帖
与我相关
我的任务
分享
#include<iostream>
using namespace std;
void change(int *arr,const int len)
{
int i=0,j=len-1;
while(i<j)
{
while(arr[i]==0&&i<j)
i++;
while(arr[j]!=0&&i<j)
j--;
if(i<j)
{
arr[i]^=arr[j];
arr[j]^=arr[i];
arr[i]^=arr[j];
i++;
j--;
}
}
}
int main()
{
int arr[]={2,0,4,0,0,5,3,9};
int len=sizeof(arr)/sizeof(*arr);
change(arr,len);
for(int i=0;i<len;++i)
cout<<arr[i]<<" ";
return 0;
}
sort(int array[],int n) {
int front = 0, end = n-1;
int tmp;
while (front < end) {
while (array[front] <= 0) {
++front;
}
while (array[end] > 0) {
--end;
}
if (front < end) {
tmp = array[front];
array[front] = array[end];
array[end] = tmp;
++front;
--end;
}
}
}