您的位置:首页 > 其它

数组中的排序问题

2017-11-08 09:20 204 查看

线性排序与冒泡排序

#include "stdafx.h"
#define N 5

int _tmain(int argc, _TCHAR* argv[])
{
int array
= { 2, 1, 5, 4, 3 };

//线性排序
for (int i = 0; i < N - 1; i++)
{
for (int j = i + 1; j < N; j++)
{
if (array[i] > array[j])      //外循环的一个数和内循环的一个数比较
{
array[i] = array[i] ^ array[j];
array[j] = array[i] ^ array[j];
array[i] = array[i] ^ array[j];
}
}
}

for (int i = 0; i < N; i++)
{
printf("array[%d]=%d\n", i, array[i]);
}

//冒泡排序
for (int i = 0; i < N - 1; i++)
{
for (int j = 0; j < N - 1 - i; j++)
{
if (array[j] > array[j + 1])   //内循环中的俩个数进行比较
{
array[j] = array[j] ^ array[j + 1];
array[j + 1] = array[j] ^ array[j + 1];
array[j] = array[j] ^ array[j + 1];
}
}
}

for (int i = 0; i < N; i++)
{
printf("array[%d]=%d\n", i, array[i]);
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: