Komepiuta, Polokalame
Sailiili auala i polokalame: sailiili "puta"
puta ituaiga e le na o manatu i ai o le auala saoasaoa, le gata i lea, o le tapunia o le lisi o le slowest auala e faatulaga ai. Ae peitai, ei ai lona tulaga lelei. O lea, o le auala e sailiili puta - sili ona e le mafaia o se fofo faalenatura ma fetaui i le faafitauli, afai e te manao e faatulaga mea i totonu o se poloaiga patino. Se tagata masani manually, mo se faataitaiga, o le a faaaogaina i latou - i le na o le taumatemate.
O fea na o se igoa e le masani ai?
alu aʻe igoa auala, e faaaoga ai le tala faatusa o puka ea i le vai. O se faatusa. E pei lava ona itiiti puka ea tulai i luga - ona e sili lo latou density nai lo se sua (i le tulaga lenei - o le vai), ma le tasi elemene autau, o le laiti o le taua, o le tele auala malie i le pito i luga o le numera o lisi.
Faamatalaga o le algorithm
o loo faatinoina ituaiga puta e faapea:
- mavae muamua: o le elemene o le numera autau ua faia e le paga e lua ma faatusatusa foi. Afai e sili atu nisi o elemene o le taua muamua au e lua tagata nai lo le lona lua, e faia e le polokalama o le latou nofoaga fesuiaiga o tupe;
- o lea, o le aofai sili o misia le faaiuga o le autau. A o isi elemene uma tumau pea e pei ona sa i ai, i se faiga vevesi, ma manaomia ai le sili sailiili;
- ma o lea e manaomia ai a mavae lona lua: ua faia e faatusa i le mavae (ua uma ona faamatalaina ai) ma ua i ai se aofai o faatusatusaga - minus tasi;
- i le fuaitau aofai faatusatusaga e tolu, o se tasi e itiiti ifo nai lo le lona lua, ma le lua, nai lo le muamua. Ma ia faapea lava;
- aotelega o loo i ai fuaitau taitasi (faatauaina uma i le 'autau, o le aofai faapitoa) minus (fuaitau aofai) faatusatusaga.
E oo lava puupuu algorithm o se polokalama e mafai ona tusia o le:
- se autau o numera e siaki i le umi e se o loo maua numera lua, o le lona lua o le latou ua noatia ina ia sili atu nai lo le muamua;
- sese faatulagaina e faasino i le tasi i le isi vaega o le swaps polokalama autau.
Pseudocode e faavae i luga o le algorithm faamatalaina
O le ua faia le faatinoga faigofie e faapea:
taualumaga Sortirovka_Puzirkom;
amata
taamilosaga mo j mai nachalnii_index e konechii_index;
taamilosaga mo i mai nachalnii_index e konechii_index-1;
pe afai massiv [i]> massiv [i + 1] (elemene muamua sili atu nai lo a lona lua), lea:
(Tuu suiga taua);
faaiuga
O le mea moni, na o aggravates le tulaga lenei faigofie: o le faigofie le algorithm, o le tele e faaalia vaivaiga uma. O tupe teu faafaigaluega Fua Faatusatusa o le taimi o le tele tele lava mo se autau laiti (iinei e oo mai i relativity: O le aofaiga o le taimi mo le e foliga mai layman laiti, ae o le mea moni a Faapolokalameina uma lona lua po o millisecond taulia).
E ave le faatinoga e sili atu. Mo se faataitaiga, i le amanaia ai le fesuiaiga o tulaga faatauaina i nofoaga autau:
taualumaga Sortirovka_Puzirkom;
amata
sortirovka = moni;
taamilosaga seia sortirovka = moni;
sortirovka = sese;
taamilosaga mo i mai nachalnii_index e konechii_index-1;
pe afai massiv [i]> massiv [i + 1] (elemene muamua sili atu nai lo a lona lua), lea:
(Suia elemene nofoaga);
sortirovka = moni; (Na faailoa mai e ua faia le fesuiaiga).
Iuga.
tapulaa
O le tulaga le lelei autu - o le umi o le faagasologa. Le a le tele o loo faatinoina taimi sailiili algorithm puta?
ua fuafuaina taimi taitai mai le aofai o fuainumera faatafafa i le autau - o le taunuuga o e fuafuaina.
Afai o le sili ona leaga tulaga pasia ai le autau o le tele o taimi e pei ona ua i ai elemene minus tasi taua. Tupu lenei mea ona o le faaiuga e na o le elemene se tasi, lea e leai se mea e faatusatusa, ma le mavae atu o le mulimuli i le autau avea gaoioiga le aoga.
I le faaopoopo atu, auala lelei o sailiili se fesuiaiga faigofie, e pei ona taʻua, e na o mo arrays o tele laiti. aofaiga o faamatalaga tele faatasi ma le fesoasoani o le faagasologa o le a le galulue: o le taunuuga o le a lē o se mea sese po o le toilalo o le polokalama.
mamalu
puta ituaiga e matua faigofie ona malamalama i ai. O le taiala o le iunivesite faapitoa i le suesueina o le okaina elemene o ana autau oo i le taimi muamua. O le auala e faigofie ona faatino le gagana polokalame Delphi (L (Delphi), ma le F / F ++ (C / C faaopoopo faaopoopo), o se tulagaese faatauaina faigofie o nofoaga algorithm i le faatulagaga saʻo ma i le Pascal (Pascal). E lelei ituaiga puta mo e amataina.
Ona o le drawbacks o le algorithm e le o faaaogaina i le faamoemoega faaopoopo.
mataupu faavae sailiili Vaaia
O le vaaiga muamua o le autau 8 22 4 74 44 37 1 7
Laasaga 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
Laasaga 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
Laasaga 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
Laasaga 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
Laasaga 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
Laasaga 6 1 4 7 8 22 37 44 74
1 4 7 8 22 37 44 74
Laasaga 7 1 4 7 8 22 37 44 74
faataitaiga ituaiga puta i Pascal
faataitaiga:
kol_mas const = 10;
var massiv: autau [1..kol_mas] o integer;
a, b, k: integer;
amata
writeln ( 'sao', kol_mas, 'elemene o autau');
mo se: = 1 e kol_mas faia readln (massiv [a ]);
mo se: = 1 e kol_mas-1 faia amata
mo b: = e amata a + 1 e kol_mas
pe afai massiv [se]> massiv [ b] ona amata
k: = massiv [a]; massiv [a]: = massiv [ b]; massiv [b]: = k;
muta;
muta;
muta;
writeln ( 'ina ua uma ituaiga');
mo se: = 1 e kol_mas faia writeln (massiv [a ]);
iuga.
FAATAITAIGA puta sailiili i le gagana C (C)
faataitaiga:
#include
#include
int autu (int argc, SIA * argv [])
{
int massiv [8] = {36, 697, 73, 82, 68, 12, 183, 88}, i, ff;
mo (;;) {
ff = 0;
mo (i = 7; i> 0; i -) {
pe afai (massiv [i]
Faafesuiaiga o (massiv [i], massiv [i- 1]);
ff ++;
}
}
pe afai (ff == 0) solia;
}
getch (); // faaaliga faatuai
toe foi 0;
}.
Similar articles
Trending Now