A bináris keresés az egyik legegyszerűbb módja annak, hogy elemet találjon egy tömbben
Gyakran előfordul, hogy a programozók, még a kezdők is, azzal szembesülnek, hogy vannak olyan számok, amelyekben meg kell találni egy bizonyos számot. Ezt a gyűjteményt tömbnek hívják. És megtalálni a megfelelő elemet, sokféleképpen lehet. De a legegyszerűbb köztük jobbra bináris keresésnek tekinthető. Mi a módszer? És hogyan lehet bináris keresést végrehajtani? A Pascal a legegyszerűbb eszköz egy ilyen program megszervezéséhez, ezért tanulni fogjuk.
Először is elemezzük, hogy mi a módszer előnyei, végül is, így megérthetjük,

Tehát mi ez a módszer elve? Érdemes megemlíteni, hogy a bináris keresés nem működik semmilyen tömbben, hanem csak egy rendezett számsorban. Minden egyes következő lépésnél a tömb középső elemét (az elemszámra hivatkozva) veszi. Ha a kívánt szám nagyobb az átlagnál, akkor mindent, ami a bal oldalon van, vagyis az átlag elemnél kevesebb, eldobható és nem kereshető ott. Ezzel ellentétben, ha az átlag alatti, a jobb oldali számok között nem keresheti őket. Ezután kiválaszunk egy új keresési területet, ahol az egész tömb középső eleme lesz az első elem, az utolsó pedig az utolsó lesz. Az új terület átlagos száma az egész szegmens ¼-e lesz, azaz (az utolsó elem + az egész tömb átlagos eleme) / 2. Ismét ugyanazt a műveletet végezzük el - összehasonlítjuk a tömb átlagos számával. Ha a kívánt érték kisebb, mint az átlag, dobja el a jobb oldalt, és addig addig végezze el, amíg meg nem találja ezt a középső elemet.

Természetesen a legjobb, ha megnézzük a bináris keresés megírásának példáját. A Pascal itt bárki számára alkalmas - a verzió nem fontos. Írjunk egy egyszerű programot.
Ez egy sor 1 H néven „Massiv”, egy változó jelzi az alsó határa a keresési, az úgynevezett „NIZ”, a felső határ, az úgynevezett „verh”, az átlagos keresési kifejezés - „sredn”; és a szükséges szám "isk".
Tehát először adja meg a keresési intervallum felső és alsó határait:
niz: = 1;
verh: = h + 1;
Ezután megszervezzük a ciklust "míg az alsó kisebb, mint a felső határ":
Míg niz
Minden lépésben oszd meg a szegmenst 2:
Minden alkalommal, amikor ellenőrzünk. Ha az átlag egyenlő a kívánt értékkel, megszakítjuk a ciklust, mivel a kívánt elem már megtalálható:
ha sredn = isk akkor megszakad;
Ha a tömb átlagos eleme nagyobb, mint amit keresünk, dobjuk el a bal oldalt, vagyis a középső elemet hozzárendeljük a felső határhoz:
ha massiv [sredn]> isk akkor verh: = sredn;
És ha éppen ellenkezőleg, akkor az alsó határértéket teszik:
egyéb niz: = sredn;
végén;
Ez minden, ami a programban lesz.
Elemezzük, hogy a bináris módszer hogyan fog kinézni a gyakorlatban. Vegyünk egy ilyen tömböt: 1, 3, 5, 7, 10, 12, 18, és keresd meg a 12-es számot.
Összesen 7 elem van, így az átlag a negyedik, értéke 7.

Mi történik egy olyan személy testével, aki nem szexel? A szex majdnem ugyanaz az alapvető szükséglet, mint az étkezés. Legalábbis, miután elkezdtem foglalkozni velük, nem fogsz leállni. Még akkor is, ha tartasz.

Hihetetlen átalakulás: az utcai "vak" macska meglepte mindenki szeme szépségével, a macska szinte semmit sem látott, és alig tudott mozogni. De amikor meggyógyult a rüh, kiderült, hogy egyáltalán nem vak. Ráadásul Cotton szeme csak egy.


9 legszörnyűbb esküvői ruhák Természetesen az esküvőre való felkészülés során minden menyasszony úgy véli, hogy ez az ő napja, ünnepélyes ünnepe, és ezért megengedheti magának, hogy mindent megtesz, amit csak akar.
