Mullide sortimise koodi tehnika
Kui sorteerite sisu tellimuste järgi, on üks kõige lihtsamaid tehnikaid, mis olemas on, mullide sortimise tehnika. Sisuliselt alustate loendi ühest otsast, liigute ükshaaval loendi teise otsa ja kui jõuate kunagi olukorrani, kus kaks eset on korrast ära, vahetate need.

See on üks kõige lihtsamaid olemasolevaid sorteerimisvõtteid, mida õpetatakse igal programmeerimise algkursusel.

Oletame, et teil on rida klasse (5). Te soovite neid sorteerida nii, et kõrgeim hinne on loendi alguses ja madalaim hinne on loendi lõpus. Pange tähele, et see ei ole REAALNE KOOD. See on näide kontseptsioonist, mida saate kasutada mis tahes keeles.

Seega täidaksite klassid (5) väärtustega. Siis sa ütleksid -

ctr = 1 kuni 4
.ctr2 = ctr + 1 kuni 5
..kui astmed (ctr) ... Temp = astmed (ctr)
... Hinded (ctr) = Hinded (ctr2)
... Hinded (ctr2) = Temp
..lülita kui
.järgmine
järgmine

Nii et sisuliselt on teil välimine silmus sammu läbi iga eseme, kuid kõige viimane. Sisemine silmus astub läbi iga proovimata eseme, alates sellest, kui te välimises silmus olete, edasi liikudes. Neid kahte võrreldakse ja kui suurem arv pole "peal", vahetatakse need omavahel.

Oletame, et teie massiivi on 90 70 80 100 60

Esmakordselt silmuse kaudu alustades 90-ga (väärtus 1) ja võrrelge seda järjekorras teistega. Kas 90 <70? Ei. Midagi ei juhtu. Kas 90 <80? Ei. Kas 90 <100? Jah. 100 võtab punkt 1 ja 90 võtab punkti 4. Kas 100 on <60? Ei. Nüüd on tagatud, et punkt 1 on kindlasti suurim arv kogu massiivis.

Nüüd töötame suuruselt teise numbri kallal. Liigume edasi peatuseni 2. Kas 70 <80? JAH, nad vahetavad kohti. Kas 80 <90? JAH, nad vahetavad kohti. Kas 90 <60? Ei, nii et 90 jääb 2. kohale.

Ja nii see läheb, kuni kogu massiiv on korrastatud. Muidugi saate massiivi korraldada kasvavas või kahanevas järjekorras, lihtsalt ümber lülitades!

Video Juhiseid: Week 3 (Aprill 2024).