200 likes | 301 Views
Betűk rendezésétől egy valós számokat tartalmazó vektor rendezéséig. Kiss László főiskolai docens OE RKK MKI 2010. augusztus 25. Mottó. Minden mindennel összefügg, minden algoritmus, és minden függvény. Ki hányadik is lett?.
E N D
Betűk rendezésétől egy valós számokat tartalmazó vektor rendezéséig Kiss László főiskolai docens OE RKK MKI 2010. augusztus 25.
Mottó Minden mindennel összefügg, minden algoritmus, és minden függvény.
Ki hányadik is lett? Az amerikai és a szovjet autóversenyző résztvettek egy autóversenyen. A szovjet versenyző második lett, de az amerikai az utolsó előtti helyen végzett.
Logikai feladatok • Adott négyzetrács alakban 9 pont. Kössük össze őket 4 egyenes vonallal a ceruza felemelése nélkül. • Négy hajóról tudjuk, hogy egymástól egyenlő távolságra vannak. Az egyik vitorlás, a másik halászhajó, a harmadik utasszállító. Milyen a negyedik? • Egy nagy átmérőjű, egyenes, rövid csőbe, aminek mindkét vége nyitott, a két végén belenézett két macska, és nem látták egymást. Hogyan történhetett ez? • Egy cowboy Pénteken belovagolt a városba, hogy a marháit eladja. Még aznap sikeresen eladta mindet. Bement a kocsmába és két nap két éjjel ivott, majd azonnal hazatért. Mégis Pénteken ment haza. Hogyan volt ez lehetséges? • A sivatagban, déli 12 órakor egy légionáriust elkapnak a beduinok. Halállal kell lakolnia, ha egy sapkából a 10 fekete és 1 fehér kő közül csukott szemmel nem tudja kivenni a fehéret. Ő a feladatot mosolyogva oldja meg. Hogyan csinálta?
Betűrendezés(szöveg feldolgozás) A szöveg (S) hossza (Len (S)). Az I. karakter leszedése (C=Mid(S,I,1)). Az index meghatározása (K=Asc(C)-64). Az számlálóvektor K. elemének ( kezdetben 0) növelése (V(K)=V(K)+1).
Betűrendezés(számlálóvektor feldolgozás) Az számlálóvektor elemei száma: 26, indexe: K. A karakterek előállítása (C=CHR(K+64)). A karakterek összefűzése az előfordulásuk száma szerint (V(K), S=S+C).
Egész számok rendezése (számok feldolgozása) J az egész számok egyike, MIN a legkisebb, MAX a legnagyobb érték. Az index meghatározása (K=J-(MIN-1). Az számlálóvektor megfelelő elemének növelése (V(K)=V(K)+1).
Egész számok rendezése (számlálóvektor feldolgozás) A számlálóvektor elemei száma: MAX-(MIN-1), indexe: K. Egy szám előállítása (J=K+(MIN-1)). Kiírás az előfordulások száma szerint (V(K)).
Betűk és egész számok rendezése Ctrl + Shift+P Ctrl + Shift+R
Betűk és egész számok rendezése Mindkét módszer a leszámláló rendezés elvéből indul ki. A leszámláló rendezés alapötlete: Harold. H. Seward, 1954 (Knuth szerint)
Egyenletes eloszlású valós számok rendezése(alapötlet) X a valós számok egyike, MIN a legkisebb, MAX a legnagyobb érték. DX=(X-MIN)/(MAX-MIN), 0<=DX<=1. K=1+Int(DX*(M-1)), 1<=K<=M. A számokat M osztályba soroltuk. Az osztályok létszáma közel azonos.
Egyenletes eloszlású valós számok rendezése(létszám és kezdőcím) Az osztályok létszámának meghatározása. K=1+Int((X-MIN)/(MAX-MIN)*(M-1)) 1<=K<=M. Számlálás (V(K)=V(K)+1). Osztályok kezdőcímének (indexének) meghatározása. (KC(1)=1, KC(I)=KC(I-1)+V(I-1), 2<=I<=M).
Egyenletes eloszlású valós számok rendezése(áthelyezés és rendezés) A számokhoz az osztályindex újra előállítása. Az adott indexű osztály kezdőcíme alapján a számok új vektorba helyezése a kezdőcím vektor megfelelő elemének növelésével. Az osztályok rendezése.
Rendezések összehasonlítása egész számokon Ctrl + Shift+H
Egyenletes eloszlású valós számok rendezése Ctrl + Shift+R
Egyenletes eloszlású valós számok mediánja(osztály meghatározás) A medián, illetve páros elemszám esetén a szükséges két érték közül a nagyobbik rendezettségi sorszáma: L=1+Int(N/2). Az osztályok létszámának meghatározása. Osztályok kezdőcímének tárolás nélküli kiszámítása, és egyúttal az L. elem osztályának meghatározása.
Egyenletes eloszlású valós számok mediánja(osztályhatár elemek) Ha L egyenlő egy osztály kezdőcímével. A keresett érték az osztály minimuma. Páros esetben a másik érték a megelőző osztály maximuma. Számok újrafeldolgozása, és a minimum, illetve – ha szükséges – a maximum és átlag meghatározása.
Egyenletes eloszlású valós számok mediánja(belső elemek) Ha L kisebb, mint egy osztály kezdőcíme. A keresett érték, illetve páros esetben a kisebbik érték is a megelőző osztályban van. Számok újrafeldolgozása, az adott osztályba sorolt elemek új vektorban elhelyezése. Részben rendezés, és a medián meghatározása.
Egyenletes eloszlású valós számok mediánja Ctrl + Shift+M
Köszönöm a figyelmet! Kiss László főiskolai docens OE RKK MKI 2010. augusztus 25.