KọmputaSiseto

Ayokuro imuposi ni siseto: ayokuro "nkuta"

nkuta too wa ni ko nikan ka lati wa ni awọn sare ọna, Jubẹlọ, o tilekun awọn akojọ ti awọn slowest ona lati to awọn. Sibẹsibẹ, o ni o ni awọn oniwe-anfani. Bayi, awọn ọna ti ayokuro ti nkuta - julọ ti bẹni a adayeba ki o si mogbonwa ojutu si isoro, ti o ba ti o ba fẹ lati seto awọn ohun kan pato ibere. Arinrin eniyan pẹlu ọwọ, fun apẹẹrẹ, o yoo lo wọn - o kan nipa intuition.

Ibi ti ṣe iru ohun dani orukọ?

Ọna orukọ wá soke, lilo ni apéerẹìgbìyànjú ti air nyoju ninu omi. O ni a afiwe. O kan bi kekere air nyoju jinde sókè - nitori won iwuwo ni ti o tobi ju a ito (ninu apere yi - awọn omi), ati kọọkan orun ano, awọn kere ti o jẹ iye, awọn diẹ mimu ọna lati lọ si oke ti awọn akojọ awọn nọmba.

Apejuwe ti awọn alugoridimu

nkuta too wa ni ošišẹ ti bi wọnyi:

  • akọkọ kọja: awọn eroja ti awọn orun awọn nọmba ti wa ni ya nipasẹ awọn meji orisii ati ki o tun akawe. Ti o ba ti diẹ ninu awọn eroja ti awọn meji-eniyan egbe akọkọ iye ni ti o tobi ju awọn keji, awọn eto mu ki wọn paṣipaarọ wọnni;
  • Nitori naa, awọn ti o tobi nọmba ti npadanu opin ti awọn orun. Nigba ti gbogbo awọn miiran eroja wa bi nwọn wà, ni a ni rudurudu ona, ati ki o beere sii ayokuro;
  • ati nitorina beere a keji kọja: o ti wa ni ṣe nipa ni apéerẹìgbìyànjú pẹlu awọn ti tẹlẹ (tẹlẹ ṣàpèjúwe) ati ki o ni awọn nọmba kan ti afiwera - iyokuro ọkan;
  • ni aye nọmba mẹta afiwera, ọkan kere ju ekeji, ati awọn meji, ju awọn akọkọ. Ati bẹ lori;
  • akopọ pe kọọkan aye ni o ni (gbogbo iye ninu awọn orun, awọn pato nọmba) iyokuro (aye nọmba) afiwera.

Ani kikuru alugoridimu ti a eto le ti wa ni kọ bi:

  • ohun orun ti awọn nọmba wa ni ẹnikeji bi gun bi eyikeyi nomba meji ti wa ni ri, awọn keji ti wọn ti wa ni owun lati wa ni o tobi ju ti àkọkọ;
  • ti ko tọ sii ni ipo ni ibatan si kọọkan miiran eroja ti awọn orun software swaps.

Pseudocode da lori awọn alugoridimu ṣàpèjúwe

Awọn alinisoro imuse ni ti gbe jade bi wọnyi:

Sortirovka_Puzirkom ilana;

ti o bẹrẹ

ọmọ fun j lati nachalnii_index to konechii_index;

ọmọ fun i lati nachalnii_index to konechii_index-1;

ti o ba ti massiv [i]> massiv [i + 1] (akọkọ ano tobi ju a keji), ki o si:

(Ayipada ibiti iye);

opin

Dajudaju, yi ayedero nikan aggravates awọn ipo: awọn rọrun awọn alugoridimu, awọn diẹ ti o j'oba gbogbo awọn abawọn. Idoko ipin ti akoko jẹ ju nla ani fun a kekere orun (nibi ba wa ni relativity: Awọn iye ti akoko fun awọn layman le dabi kekere, sugbon ni o daju a komputa gbogbo keji tabi paapa millisecond julo).

O si mu awọn dara imuse. Fun apẹẹrẹ, mu iroyin sinu awọn paṣipaarọ ti iye ni orun awọn ipo:

Sortirovka_Puzirkom ilana;

ti o bẹrẹ

sortirovka = otitọ;

ọmọ, titi sortirovka = otitọ;

sortirovka = eke;

ọmọ fun i lati nachalnii_index to konechii_index-1;

ti o ba ti massiv [i]> massiv [i + 1] (akọkọ ano tobi ju a keji), ki o si:

(Yi eroja ibi);

sortirovka = otitọ; (Mọ pe awọn paṣipaarọ ti a ti ṣe).

Opin.

idiwọn

Awọn ifilelẹ ti awọn daradara - iye ti awọn ilana. Bi Elo akoko ti wa ni ošišẹ ti ayokuro alugoridimu ti nkuta?

Asiwaju akoko ti wa ni iṣiro lati awọn nọmba ti square awọn nọmba ninu awọn orun - opin abajade ti o ni iwon.

Ti o ba ti buru nla awọn orun ni koja bi ọpọlọpọ igba bi o ti ni eroja iyokuro ọkan iye. Eleyi ṣẹlẹ nitori ni opin nibẹ jẹ nikan kan ano, eyi ti ni ohunkohun lati fi ṣe afiwe, ati awọn ti o kẹhin kọja nipasẹ awọn orun di asan igbese.

Ni afikun, o munadoko ọna ti ayokuro kan ti o rọrun paṣipaarọ, bi o ti ni a npe ni, nikan fun imole ti kekere iwọn. Tobi oye akojo ti data pẹlu iranlọwọ ti awọn ilana yoo ko sise: awọn esi yio je boya ohun ašiše tabi awọn ikuna ti awọn eto.

iyì

nkuta too jẹ gidigidi rọrun lati ni oye. Awọn curricula ti awọn imọ egbelegbe ninu iwadi ti awọn bere fun eroja ti awọn oniwe-orun ṣe ni akọkọ ibi. Awọn ọna ti jẹ rorun lati se mejeji ni Delphi siseto ede (L (Delphi), ati awọn C / C ++ (C / C plus plus), ohun ti iyalẹnu rọrun iye ti ipo alugoridimu ni ọtun ibere ati ni Pascal (Pascal). Bubble too jẹ apẹrẹ fun olubere.

Nitori awọn drawbacks ti awọn alugoridimu ti wa ni ko lo ninu extracurricular ti a ni.

Visual ayokuro opo

Awọn ni ibẹrẹ wo ti orun 8 22 4 74 44 37 1 7

Igbese 1 8 22 4 74 44 37 1 7

8 22 4 74 44 1 37 7

8 22 4 74 1 44 37 7

8 22 4 1 74 44 37 7

8 22 1 4 74 44 37 7

8 1 22 4 74 44 37 7

1 8 22 4 74 44 37 7

Igbese 2 1 8 22 4 74 44 7 37

1 8 22 4 74 7 44 37

1 8 22 4 7 74 44 37

1 8 22 4 7 74 44 37

1 8 4 22 7 74 44 37

1 4 8 22 7 74 44 37

Igbese 3 1 4 8 22 7 74 37 44

1 4 8 22 7 37 74 44

1 4 8 22 7 37 74 44

1 4 8 7 22 37 74 44

1 4 7 8 22 37 74 44

Igbese 4 1 4 7 8 22 37 44 74

1 4 7 8 22 37 44 74

1 4 7 8 22 37 44 74

1 4 7 8 22 37 44 74

Igbese 5 1 4 7 8 22 37 44 74

1 4 7 8 22 37 44 74

1 4 7 8 22 37 44 74

Igbese 6 1 4 7 8 22 37 44 74

1 4 7 8 22 37 44 74

Igbese 7 1 4 7 8 22 37 44 74

nkuta too apẹẹrẹ ni Pascal

apẹẹrẹ:

const kol_mas = 10;

var massiv: orun [1..kol_mas] ti odidi;

a, b, k: odidi;

bẹrẹ

writeln ( 'input', kol_mas, 'eroja ti orun');

fun: = 1 si kol_mas ṣe readln (massiv [a ]);

fun: = 1 si kol_mas-1 ṣe bẹrẹ

fun b: = a + 1 si kol_mas ma bẹrẹ

ti o ba ti massiv [a]> massiv [ b] ki o si bẹrẹ

k: = massiv [a]; massiv [a]: = massiv [ b]; massiv [b]: = k;

mu;

mu;

mu;

writeln ( 'lẹhin ti too');

fun: = 1 si kol_mas ṣe writeln (massiv [a ]);

opin.

Apere ti nkuta ayokuro ni C ede (C)

apẹẹrẹ:

#include

#include

int akọkọ (int argc, shaha * argv [])

{

int massiv [8] = {36, 697, 73, 82, 68, 12, 183, 88}, i, FF;

fun (;;) {

FF = 0;

fun (i = 7; i> 0; i -) {

ti o ba ti (massiv [i] [i- 1]) {

siwopu (massiv [i], massiv [i- 1]);

FF ++;

}

}

ti o ba ti (FF == 0) adehun;

}

getch (); // àpapọ idaduro

pada 0;

}.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 yo.birmiss.com. Theme powered by WordPress.