BSc Matematika Alapszak
Tantárgyleírás
2013.

Algoritmusok tervezése és elemzése1
Óraszám
ea/gy
Kredit
ea/gy
Számonkérés Szakirány Tárgykód
ea/gy
Ajánlott
félév
Státusz
2 + 2 2 + 3 kollokvium +
gyak. jegy
alk. mat. mm1c1at4a
mm1c2at4a
4 kötelező
Erős Gyenge előfeltételek
Gyakorlat
Erős:
Előadás
Gyenge:
a gyakorlat
Megjegyzések
  • Akik 2012 szeptembere előtt kezdték meg tanulmányaikat Matematika BSc alapszakon, azok a Programozási nyelv (C++) és az Algoritmusok tervezése és elemzése2 tárgyak közül bármelyiket elegendő, ha elvégzik, és ha mindkettőt elvégzik, akkor az egyik számít be a kötelezően választható kreditek közé (a másik a kötelezőkbe).
A tematikát kidolgozta:
Szükséges előismeretek
Programozási alapismeretek.
Irodalom
  • Cormen, Leiserson, Rivest, Stein: Új algoritmusok. Scolar, 2003.
  • Rónyai L., Ivanyos G., Szabó R.: Algoritmusok. TypoTex, 2005.
Ajánlott:
  • D. E. Knuth: A számítógép-programozás művészete, I. és III. Műszaki Könyvkiadó, 1987.
  • S. Lipschutz: Adatszerkezetek. Panem-McGraw-Hill, 1993.
  • N. Wirth: Algoritmusok + Adatstruktúrák = Programok. Műszaki Könyvkiadó, 1982.
  • A. Aho, J. Hopcroft, J. Ullman: Számítógép-algoritmusok tervezése és analízise. Műszaki Könyvkiadó, 1982.
  • Iványi Antal: Informatikai algoritmusok I-II. 2004, 2005.
  • Tematikák, segédanyagok letölthetők a http://aszt.inf.elte.hu/~hunlaci/ és http://people.inf.elte.hu/fekete/ címekről.
Tematika
  • Feladatok algoritmikus megoldhatósága, az idő- és tárbonyolultság, az „ordó matematikája”, nagyságrendek.
  • A programozás absztrakt alapfogalmai: állapottér, feladat, program, megoldás. Program-konstrukciós módszerek, programhelyesség bizonyítás. Programozási tételek.
  • Az adattípus absztrakciós szintjei: absztrakt adattípus (ADT), absztrakt adatszerkezetek (ADS), ábrázolási módszerek (aritmetikai, láncolt). Egyszerű adattípusok: tömb, verem, sor, elsőbbségi sor, listák, fák, és tipikus alkalmazásaik.
  • Kiválasztások: maximum, szimultán minimum és maximum kiválasztás, a k-adik legkisebb elem kiválasztása lineáris időben. Alsókorlát-elemzés a „csalafinta válaszoló” módszerével.
  • Az összehasonlításos rendezések alsókorlát-elemzése a legkedvezőtlenebb és az átlagos esetben. Rendezési módszerek osztályozása. A maximumot kiválasztó rendezések alapalgoritmusa és gyorsítás lehetősége tournament és heap felhasználásával. Az egy elemet a helyére vivő rendezők, quick-sort, rendező-fák (bináris rendező-fa, kiegyensúlyozott bináris rendező-fa). Az egyszerű beillesztés és a fogyó növekményű rendezés (Shell-módszer). Csere rendezések, adat-független csere-rendezések, szemléltetésük rendező hálózatokkal (buborék, piramis, Batcher). Az összefuttatásos rendezés tömbökben, illetve külső rendezőként.
  • Keresési módszerek asszociatív adatszerkezeteken 1, visszavezetéses technikák (lineáris keresés, logaritmikus (bináris) keresés, keresőfák, optimális keresőfa, AVL-fa, B-fák).