线性排序与冒泡排序
#include "stdafx.h"
#define N 5
int _tmain(int argc, _TCHAR* argv[])
{
int array[N] = { 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;
}