Hirdetés
- Redmi Note 12 Pro - nem tolták túl
- Külföldi prepaid SIM-ek itthon
- Okosóra és okoskiegészítő topik
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Hamarosan körbefotózza a Google a Balatont
- Kis tárcsa kerül a nagy mellé a kameratelefonon
- Android szakmai topik
- Xiaomi 17 Ultra - jó az optikája
- Xiaomi 15T - reakció nélkül nincs egyensúly
-
Mobilarena

Új hozzászólás Aktív témák
-
Miracle
senior tag
válasz
Cathfaern
#344
üzenetére
sorry.
mondjuk így néz ki amit akarsz:
int a[1..100]; /* ebbe a tömbbe eltárolod a számokat, amikben keresni akarsz, persze _növekvő_ sorrendben.*/
struct nincs_meg{};
ekkor a függvény(a pontos a sorok elején csak a tabulálás miatt vannak ott):
int logker(const int[] t, const int b, const int e, const int what)
{
. int temp = (b+e) /2;
. if (t[temp] > what)
. {
. return logker(v, b, temp, what);
. }
. else
. {
. if (v[temp] == what) return temp;
. if (b = e) throw(nincs_meg);
. return logker(v, temp, e, what);
. }
}
ez egy rekurzív megvalósítás, nem garantálom, hogy műxik, nem fordítottam le, de szerintem működni fog. vedd észre, hogy hiába statikus az a tömb mérete, ezt a függvény nem használja ki, bármekkora tömböt átadhatsz neki, csak a 2. és a 3. változó 0, illetve tömbméret-1 legyen. megvalósítható templatekkel is, de nem szeretném bonyolítani. így tudod használni
try
{
logker(a,0,99,40) //a fenti a tömbben keressük a 40 értéket
}
catch(nincs_meg){std :: cout << ''nincs ilyen értékű elem a tömbben\n'';}
remélem érthető(és működik)
a műveletigény azt jelenti, hogy ezzel az algoritmussal ha n hosszú a tömb, akkor legrosszab esetben log_2(n) felső-egész-rész lépésben megtalálod a keresett számot, log2n pedig az a szám, mire 2őt emelve n-et kapunk, így tudod kiszámolni számológéppel: log_2(n) = lg(n) / lg(2) (itt lg tetszőleges logaritmus, amit találsz a számológépeden) megjegyzem, hogy az átlagos műveletigény azt feltételezve, hogy a keresett száém megtalálásának valószínűsége minden rekeszben 1/n log_2(n) felső-egészrész -1
és bocs hogy összezavartalak, remélem kiengeszteltelek..
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Asus P5P800 SE Retro LGA 775 alaplap, Pentium 4 CPU, 1,5 GHz CPU
- XFX Radeon HD4650 512 MB 128bit DDR2 AGP Retro Videokártya
- Chieftec Smart Seriels GPS-400A8 80 Plus minősítésű 400W tápegység
- Dell G15 5511 i7-11800H / RTX 3050 Ti 4GB / 16GB RAM / 512GB NVMe 15,6" FHD 120Hz WVA
- Eladó Apple iPhone 11 128GB piros (PRODUCT RED) színben
- Apple iPhone 12 Pro Max 256GB, Kártyafüggetlen, 1 Év Garanciával
- LG 28MQ780 - Dual Monitor - Nano IPS - 2560x2880 - HDR10 - USB Type-C - AMD FreeSync - MacBook Ready
- Steam, EA, Ubisoft és GoG játékkulcsok, illetve Game Pass kedvező áron, egyenesen a kiadóktól!
- RÉSZLETFIZETÉS.BANKMENTES.KAMATMENTES. Új noblechairs EPIC Mercedes-AMG Petronas
- Gamer PC-Számítógép! Csere-Beszámítás! Intel Ultra 7 265KF / RTX 5070 / 32GB DDR5 / 1TB Nvme SSD
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest



