快速排序笔记

void swap(int* a, int* b) {
	int temp = *a;
	*a = *b;
	*b = temp;
}

//swap交换两数



void quick_sort(int u[], int l, int r) {
	if (l >= r) return;
	int x = u[r], i = l - 1 , j = r + 1;
	while (i<j)
	{
		do i++; while (u[i] < x);
		do j--; while (u[j] > x);
		if (i < j) swap(&u[i],&u[j]);
	}
	quick_sort(u, l, j);
	quick_sort(u, j + 1, r);
}

//快速排序,l为开头序号,r为结尾序号(模板无越界报错)

posted @ 2024-10-06 10:32  才瓯  阅读(34)  评论(0)    收藏  举报