? 確定一組數(shù)據(jù) ,即q數(shù)組
十余年的正定網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營銷的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整正定建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“正定網(wǎng)站設(shè)計(jì)”,“正定網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。? 左端點(diǎn)為了,右端點(diǎn)為r
? (1)確定分界點(diǎn)
? q[l] 或 q[ (l + r) / 2] 或 q[r] 或任意一個(gè)數(shù) 作為分界點(diǎn),分界點(diǎn)數(shù)為x
? (2)調(diào)整區(qū)間 (重點(diǎn))
? 使<= x的數(shù)放在左半邊,使 >= x 的數(shù)放在右半邊,兩邊的數(shù)可以亂序,暫時(shí)不用排序
? (3)利用遞歸處理左右兩端 ,進(jìn)行排序
? 暴力法
? (1)開兩個(gè)額外數(shù)組a,b
? (2)掃描 l 到 r 的所有數(shù),將<= x 的值放到a中,將 >= x的數(shù)放到b中
? (3)將a,b排序后放到q數(shù)組中 a[ ] ->q[ ], b[ ]->q[ ];
? (4)弊端:額外開辟空間,占用內(nèi)存
? 簡(jiǎn)便方法(指針)
? 用兩個(gè)指針i,j指向左端與右端的數(shù)
? (1)判斷指針i所指向的數(shù)是否小于x,符合條件時(shí)往右移一位,當(dāng)大于等于x時(shí)指針i停下
? (2)判斷指針j所指向的數(shù)是否大于x,符合條件時(shí)往左移一位,當(dāng)小于等于x時(shí)指針停下
? (3)將i與j指針?biāo)赶虻臄?shù)交換,并再次重復(fù)1,2,3,直到i,j走到中間位置
? (4)兩邊排序
模板#include// scanf和printf也在iostream里面 ,但cstdio更快一些
#include#include //使用swap函數(shù)
using namespace std;
const int N = 1000001;
int n;
int q[N];
void quick_sort(int q[ ], int l, int r)
{
if (l >= r) return ; // 返回一個(gè)隨機(jī)值,該return只是起到一個(gè)中止的作用,無需返回特定值
int x = q[l], i = l - 1, j = r + 1,;
//x = q[(l+r+1 )/2 一定不能取到邊界上,上面的x只是舉例
// x = q[l + r >>1]會(huì)更快,以后再理解
while (i< j)
{
do {
i++;
} while (q[i]< x);
do {
j--;
} while (q[j] >x);
if (i< j) swap(q[i],q[j]);
}
if(l< j )quick_sort(q, l, j);//左半部分
if(i< r)quick_sort(q, j + 1, r);//右半部分
}
int main()
{
scanf("%d", &n);
for (int i = 0;i< n;++i) scanf("%d", &q[i]);
quick_sort(q, 0, n-1);
for (int i = 0;i< n;++i) printf("%d ", q[i]);
return 0;
}
END
自學(xué)編程的小伙伴們不容易,在學(xué)習(xí)編程的路上會(huì)遇到很多瓶頸,甚至?xí)械矫悦?,為此我給大家整理了一些資源福利,都放在下方啦,還可以和群里的小伙伴們一起來學(xué)習(xí)交流嗷~
C/C++編程學(xué)習(xí)基地https://jq.qq.com/?_wv=1027&k=9Hqqlikh
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
當(dāng)前文章:排序算法——快速排序-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://www.rwnh.cn/article34/dspcse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)、網(wǎng)站營銷、關(guān)鍵詞優(yōu)化、做網(wǎng)站、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容