基础算法

1 · kahvia · Jan. 15, 2024, 10:43 a.m.
快速排序1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859//// Created by Kahiva on 2024/1/4.//#include <iostream>using namespace std;const int N = 100010;int t[N];void quick_sort(int l, int r){ if(l >= r) return; int i = l - 1, j = r + 1, x = t[(l + r) / 2]; while(i < j){ //基准值元素也可以交换,在左区间或者右区间都可以,因此while (t[i] < x);没有等号=。 //如果是不能交换,即while (t[i] <= x); //那么比如6 2 3,基准值为2时。从左边找到了一个比2大的值6,但是从右边找不到比2小的,j--会一直执行,死循环...