快排 - 打印logo

c++ 同时被 2 个专栏收录
16 篇文章 0 订阅
9 篇文章 0 订阅

在这里插入图片描述

#include <iostream>
#include <array>
using namespace std;

void qucikSort(int * a,int n)
{
	int i , j;
	int val = a[n/2];

	if (n < 2) return;
	cout << "start:";
	for ( j = 0; j < n; j++){
		cout  << a[j]  <<" ";
	}
	cout << "    " ;

	for ( i = 0, j = n - 1; ; i++,j--){
		while (a[i] < val) i++ ;
		while (a[j] > val) j--;
		if (i >= j)  break;
		int temp = a[i]; a[i] = a[j]; a[j] = temp;
		
    }


	cout << "end:";
	for ( j = 0; j < n; j++){
		cout  << a[j]  <<" ";
	}
	cout << endl ;
	qucikSort (a,i);
	qucikSort (a + i,n-i);
}



int main()
{
	int a[10] = {1,2,5,9,8,7,6,4,3,0};
	int n = sizeof(a)/sizeof(a[0]);
	cout << "start: ";
	for (int i = 0; i < 10; i++)
	{
		cout << a[i] << " " ;

	}
	cout << endl;
	qucikSort (a,n);

	cout << "end: ";
	for (int i = 0; i < 10; i++)
	{
		cout << a[i] << " " ;

	}
	cout << endl;

	system ("pause");
		return 0 ;
}
  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值