A backtracking nem rekurzív változata, azaz az iteratív alakja p←1; st[p] ← 0; amíg p>0 végezd el kezdet ha akkor kezdet st[p] ← ha akkor meghív kiír_vagy_elment_mátrixba_vagy_vektorba_vektor.

Slides:



Advertisements
Hasonló előadás
A sin függvény grafikonja
Advertisements

2005. október 7..
Készítette: Kosztyán Zsolt Tibor
Elemi algoritmusok Páll Boglárka.
Programozási feladatok
MESTERSÉGES INTELLIGENCIA (ARTIFICIAL INTELLIGENCE)
Elemi algoritmusok Páll Boglárka.
Programozási tételek, és „négyzetes” rendezések
Matematika és Tánc Felkészítő tanár: Komáromi Annamária
Determinisztikus programok. Szintaxis: X : Pvalt program változók E : Kifkifejezések B : Lkiflogikai kifejezések C : Utsutasítások.
Illés Tibor – Hálózati folyamok
INFOÉRA Kombinatorikai algoritmusok (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Juhász István-Zsakó László: Informatikai.
INFOÉRA 2006 Kombinatorika
Rekurzió (Horváth Gyula és Szlávi Péter előadásai felhasználásával)
INFOÉRA Dinamikus programozás (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Juhász István-Zsakó László: Informatikai képzések.
4. Helyes zárójelezés algoritmusa
Minimális költségű feszítőfák
4. VÉGES HALMAZOK 4.1 Alaptulajdonságok
Gráfok szélességi bejárása
Operációkutatás szeptember 18 –október 2.
Programozási alapismeretek 10. előadás
Mátrix függvények Keresőfüggvények
Készítette: Pető László
permutáció kombináció variáció
Papp Róbert, Blaskovics Viktor, Hantos Norbert
OPERÁCIÓKUTATÁS Kalmár János, 2012 Tartalom A nulla-egy LP megoldása Hátizsák feladat.
LDinamikus tömbök, kétdimenziós tömbök Alkalmazott Informatikai Tanszék MŰSZAKI INFORMATIKA dr.Dudás László 21./0. lVektorok létrehozása futásidőben, dinamikusan.
A digitális számítás elmélete
Eseményalgebra, kombinatorika
ELTE Szlávi-Zsakó: Programozási alapismeretek 8.1/ Kiválogatás Specifikáció:  Bemenet: N:Egész, X:Tömb[1..N:Valami]
Reprezentációs függvény. Adva egy adattípus absztrakt és konkrét specifikációja: d a = ( A, F, E a ); d c = ( C, G, E c ); A = {A 0,..., A n };C = {C 0,...,
Tökéletes Hash függvények keresése Kasler Lóránd-Péter.
Matematika III. előadások Építőmérnök BSc szak PMMINB313
Szélességi bejárás A szélességi bejárással egy irányított vagy irányítás nélküli véges gráfot járhatunk be a kezdőcsúcstól való távolságuk növekvő sorrendjében.
Gráf szélességi bejárása
Az oszd meg és uralkodj (Divide et Impera) programozási módszer
Lénárt Szabolcs Páll Boglárka
Félévin szereplő tipusfeladatok
Félévin szereplő tipusfeladatok. Feladat tipus 1 – elméleti kérdések: Pl: Írd le saját szavaiddal a számok számjegyekre bontási algoritmusát. Írd le saját.
Átalakítás előltesztelő ciklusból hátultesztelő ciklusba és fordítva.
Gépi tanulás Tanuló ágens, döntési fák, általános logikai leirások tanulása.
1 AAO folytatás ++ Csink László. 2 Rekurzív bináris keresés (rendezett tömbben) public static int binker(int[] tomb, int value, int low, int high) public.
Algoritmus szerkezetek
Feladat: Adott egy város, benne metrók és állomások. Írjunk algoritmust amely megszámolja hogy mennyi az a legkevesebb átszállás amellyel egy tetszőleges.
Nevezetes algoritmusok
Algoritmusok.
Készítette: Hanics Anikó. Az algoritmus elve: Kezdetben legyen n db kék fa, azaz a gráf minden csúcsa egy-egy (egy pontból álló) kék fa, és legyen minden.
Mélységi bejárás Az algoritmus elve: Egy kezdőpontból kiindulva addig megyünk egy él mentén, ameddig el nem jutunk egy olyan csúcsba, amelyből már nem.
Algoritmizálás, adatmodellezés tanítása 8. előadás.
Témazáró dolgozat Kiegészítések.
Dr. Bánkuti Gyöngyi Klingné Takács Anna
Feladatok (értékadás)
Függvények II..
Programozási alapismeretek 10. előadás. ELTE Szlávi-Zsakó: Programozási alapismeretek 10.2/  Kiválogatás + összegzés.
Algoritmusok és Adatszerkezetek Egy kifejezés lengyelformára hozása - bemutató.
Gráf szélességi bejárása. A szélességi bejárás elmélete Célja egy véges gráf összes csúcsának bejárása a kezdőcsúcstól való távolságuk szerinti növekvő.
Összeállította: Gergely János
„RADIX előre „ Készítette : Giligor Dávid Neptun: HSYGGS.
INFOÉRA Gráfok, gráfalgoritmusok II. (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Juhász István-Zsakó László: Informatikai.
Statisztikai és logikai függvények
Táblázatkezelés Képletek és függvények. Képletek A képletek olyan egyenletek, amelyek a munkalapon szereplő értékekkel számításokat hajtanak végre. A.
TÁMOP /1-2F Informatikai gyakorlatok 11. évfolyam Alapvető programozási tételek megvalósítása Czigléczky Gábor 2009.
Nevezetes algoritmusok
Mediánok és rendezett minták
Greedy heurisztikán alapuló közelítő algoritmusok
Technológiai folyamatok optimalizálása
A bűvös négyzet játék algoritmusa
Nem módosítható keresések
Informatikai gyakorlatok 11. évfolyam
Programozási tételek.
Előadás másolata:

A backtracking nem rekurzív változata, azaz az iteratív alakja p←1; st[p] ← 0; amíg p>0 végezd el kezdet ha akkor kezdet st[p] ← ha akkor meghív kiír_vagy_elment_mátrixba_vagy_vektorba_vektor (p) különben kezdet p ←p+1; st[p] ←0; vége különben p ←p-1; vége

A backtracking nem rekurzív változata, azaz az iteratív alakja p←1; st[p] ← 0; amíg p>0 végezd el kezdet ha akkor kezdet st[p] ← ha akkor meghív kiír_vagy_elment_mátrixba_vagy_vektorba_vektor (p) különben kezdet p ←p+1; st[p] ←0; vége különben p ←p-1; vége

A backtracking rekurzív változata Minden pval  -től -ig végezd el kezdet st[p]← pval ha akkor meghív kiír_vagy_elment_mátrixba_vagy_vektorba_vektor (p) különben önmagát_hívja_meg_a bktr (p+1) vége.

A backtracking rekurzív változata Minden pval  -től -ig végezd el kezdet st[p]← pval ha akkor meghív kiír_vagy_elment_mátrixba_vagy_vektorba_vektor (p) különben önmagát_hívja_meg_a bktr (p+1) vége.

Megválaszolandó kérdések  Honnan veszi a lehetséges részmegoldásokat, egy egy megoldás esetén? Honnan veszi a lehetséges részmegoldásokat, egy egy megoldás esetén?  Mikor jutunk egy megoldáshoz?  Mikor jó egy részmegoldás?  Hány megoldásra számíthatunk? Lehete meghatározni ezt előre? Hogyan?  Kell –e a megoldások halmazából optimálisat kiválasztani, vagy T tulajdonságuakat, vagy más utólagos műveletet végezni ezekkel, mely ezen megoldások összehasonlítását ígényli?

 Vektorral dolgozunk, melynek vagy az elemeit, vagy az elemeinek az indexeit mentjük egy - egy verem szintre.  De megtörténhet az is, hogy egy – egy veremszintre más - más vektor eleme kerül (vagy vektorban alvektor eleme), nem ugyan az a vektoré. Lásd a Descartes szorzatot is.  Ha mátrixból nyerjük, akkor a mátrix sora lesz a VEREM SZINTJE és az oszlopa a SZINTRE KERÜLŐ ELEM értéke vagy egy másik mátrixot használunk a verem helyett, ahhoz, hogy bejelöljük azokat az elemeket, amiket egy megoldásba lehetséges jó részmegoldásként érintettünk már. Lásd a Labirintus feladatot. Verem szerkezet Legfelső szint Legalsó szint elemek elérési sorrendje

Vegyel egy A4-es kockás lapot, rajzolj egy labirintust, úgy, hogy az utakat ábrázoló kockákat besatírozod halványan ceruzával. Majd rajzold le mégegyszer ugyanazt a labirintust és helyezd el a kiinduló pontba Bodrit, majd keresd meg, hány kivezető utat találhat, minden talált utat satírozd be különböző színnel.

Vegyel egy A4-es kockás lapot, rajzolj egy labirintust, úgy, hogy az utakat ábrázoló kockákat besatírozod halványan ceruzával. Majd rajzold le mégegyszer ugyanazt a labirintust és helyezd el a kiinduló pontba Bodrit, majd keresd meg, hány kivezető utat találhat, minden talált utat satírozd be különböző színnel. Hány utat találsz, tudod –e mindig előre? Bodri eljut mindig a csonthoz? Van –e kapcsolat a, közös a talált utak között? Hogyan találta meg az utat? Ird le a lépéseit Bodrinak. A különböző lépést külön sorszámmal tüntesd fel.

Mit helyettesítettünk egy egy csomóval? sor indexoszlop index lépésszám Folytasd!

1. voiajorului%20-%20implementare.swfhttp:// voiajorului%20-%20implementare.swf 2. %20Problema%20labirintului.swfhttp:// %20Problema%20labirintului.swf 3. %20Problema%20labirintului%20-%20implementare.swfhttp:// %20Problema%20labirintului%20-%20implementare.swf

A backtracking rekurzív változata a permutációra Alprogram bktr(p) {eljárás} Minden pval  1 -től n -ig végezd el kezdet st[p]← pval ha megfelel(p) akkor ha p=n akkor meghív kiír_vektor(p, st) különben bktr (p+1) vége. Algoritmus megfelel(p) {függvény} megfelel:=igaz; Minden j  1 -től p-1 -ig végezd el kezdet ha st[p] = st[j] akkor megfelel:=hamis vége

A backtracking rekurzív változata a variációra Alprogram bktr(p) {eljárás} Minden pval  1 -től n -ig végezd el kezdet st[p]← pval ha megfelel(p) akkor ha p=k akkor meghív kiír_vektor(p, st) különben bktr (p+1) vége. Algoritmus megfelel(p) {függvény} megfelel:=igaz; Minden j  1 -től p-1 -ig végezd el kezdet ha st[p] = st[j] akkor megfelel:=hamis vége Változás: csak a p=n változott p=k -ra

A backtracking rekurzív változata a variációra Alprogram bktr(p) {eljárás} Minden pval  1 -től n -ig végezd el kezdet st[p]← pval ha megfelel(p) akkor ha p=k akkor meghív kiír_vektor(p, st) különben bktr (p+1) vége. Algoritmus megfelel(p) {függvény} megfelel:=igaz; Minden j  1 -től p-1 -ig végezd el kezdet ha (st[p] <= st[j]) akkor megfelel:=hamis vége Változás: 1. csak a p=n változott p=k -ra 2. (st[p] = st[j]) feltétel változott (st[p] <= st[j]) -re