快速排序
来源:互联网 发布:香港购物 知乎 编辑:程序博客网 时间:2024/04/30 21:07
#include <stdio.h>
#include <stdlib.h>
void QuickSort(int *array, int low, int high)
{
if(low < high)
{
int _low = low;
int _high = high + 1;
int provit = array[low];
int temp = 0;
while (1)
{
while (array[++_low] < provit);
while (array[--_high] > provit);
if (_low >= _high)
{
break;
}
temp = array[_low];
array[_low] = array[_high];
array[_high] = temp;
}
array[low] = array[_high];
array[_high] = provit;
QuickSort(array, low, _high - 1);
QuickSort(array, _high + 1, high);
}
}
int main()
{
int myArray[10] = {
28, 231, 12, 42, 14, 1, 63, 85, 31, 0
};
for (int i = 0; i < 10; i++)
{
printf("%d ", myArray[i]);
}
printf("/n");
QuickSort(myArray, 0, 9);
for (int j = 0; j < 10; j++)
{
printf("%d ", myArray[j]);
}
return 0;
}
#include <stdlib.h>
void QuickSort(int *array, int low, int high)
{
if(low < high)
{
int _low = low;
int _high = high + 1;
int provit = array[low];
int temp = 0;
while (1)
{
while (array[++_low] < provit);
while (array[--_high] > provit);
if (_low >= _high)
{
break;
}
temp = array[_low];
array[_low] = array[_high];
array[_high] = temp;
}
array[low] = array[_high];
array[_high] = provit;
QuickSort(array, low, _high - 1);
QuickSort(array, _high + 1, high);
}
}
int main()
{
int myArray[10] = {
28, 231, 12, 42, 14, 1, 63, 85, 31, 0
};
for (int i = 0; i < 10; i++)
{
printf("%d ", myArray[i]);
}
printf("/n");
QuickSort(myArray, 0, 9);
for (int j = 0; j < 10; j++)
{
printf("%d ", myArray[j]);
}
return 0;
}
- 快速排序
- 快速排序
- 快速排序
- 快速排序!
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- MFC状态栏编程
- 用自定义属性实现必需字段的检查
- 创业者也要考虑自己的成本
- 从最简单和朴素的水平导航菜单栏到复杂的图片导航菜单栏的实现
- 用c#实现类似QQ的简单通讯程序
- 快速排序
- 粟裕在战争史上完成的五大奇迹
- 在linux下安装oracle客户端
- Hibernate连接池配置
- 存货计价方法——加权平均法
- Webwork文件上传
- Freemarker对于多风格的应用
- 异常小结
- 在ASP.NET中实现上传图片,并按比例生成缩略图