Komputeralgebra Rendszerek

Hasonló dokumentumok
Komputeralgebra rendszerek

Komputeralgebra rendszerek

Komputeralgebra rendszerek

Komputeralgebra Rendszerek

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája

Komputeralgebra Rendszerek

List<String> l1 = new ArrayList<String>(); List<Object> l2 = l1; // error

Lekérdezések az SQL SELECT utasítással

Bevezetés a Programozásba II 12. előadás. Adatszerkezetek alkalmazása (Standard Template Library)

Adatbázis-lekérdezés. Az SQL nyelv. Makány György

SZÁMÍTÓGÉPES PROBLÉMAMEGOLDÁS

STL. Algoritmus. Iterátor. Tároló. Elsődleges komponensek: Tárolók Algoritmusok Bejárók

Collections. Összetett adatstruktúrák

Adattípusok, vezérlési szerkezetek. Informatika Szabó Adrienn szeptember 14.

Generikus osztályok, gyűjtemények és algoritmusok

Generikus Típusok, Kollekciók

.Net adatstruktúrák. Készítette: Major Péter

Komputeralgebra rendszerek

A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai

A C# programozási nyelv alapjai

Listák, szótárak, fájlok Listák, szótárak, fájlok

Komputeralgebra Rendszerek

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

Algoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek

Imperatív programozás

van neve lehetnek bemeneti paraméterei (argumentumai) lehet visszatérési értéke a függvényt úgy használjuk, hogy meghívjuk

Komputeralgebra Rendszerek

Programozás I gyakorlat

Shannon és Huffman kód konstrukció tetszőleges. véges test felett

BASH SCRIPT SHELL JEGYZETEK

Programozási technológia

Adattípusok. Max. 2GByte

Programozás alapjai. 5. előadás

Elemi adatszerkezetek

Komputeralgebra rendszerek

Fraktálok. Hausdorff távolság. Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék március 14.

Programozási nyelvek Java

S z á m í t ó g é p e s a l a p i s m e r e t e k

7. Strukturált típusok

Cekla. Készítette Doxygen Tue Sep :13:44

A szürke háttérrel jelölt fejezet/alfejezet szövege a CD-mellékleten található. A CD-melléklet használata. 1. Elméleti áttekintés 1

Komputeralgebra Rendszerek

Széchenyi István Szakképző Iskola

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Adatszerkezetek és algoritmusok

Ugrólisták. RSL Insert Example. insert(22) with 3 flips. Runtime?

Emlékeztető: a fordítás lépései. Szimbólumtábla-kezelés. Információáramlás. Információáramlás. Információáramlás.

Programozás(A szakirány) II. beadandó feladat Farkas András HP6S15 1. csoport Veszprémi Anna / Hudoba Péter

Adatbázis-kezelés, információs-rendszerek

Adatbázisok* tulajdonságai

Programozás alapjai II. (7. ea) C++ Speciális adatszerkezetek. Tömbök. Kiegészítő anyag: speciális adatszerkezetek

Speciális adatszerkezetek. Programozás alapjai II. (8. ea) C++ Tömbök. Tömbök/2. N dimenziós tömb. Nagyméretű ritka tömbök

Adatbázisok. 9. gyakorlat SQL: SELECT október október 26. Adatbázisok 1 / 14

A Python programozási nyelv

A félév során előkerülő témakörök

OOP: Java 11.Gy: Enumok, beágyazott osztályok. 13/1 B ITv: MAN

Készítette: Nagy Tibor István

Láncolt listák. Egyszerű, rendezett és speciális láncolt listák. Programozás II. előadás. Szénási Sándor

Egyirányban láncolt lista

Programozás alapjai. 10. előadás

Struktúra nélküli adatszerkezetek

Komputeralgebra Rendszerek

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

Függvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3)

Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2)

Adatszerkezetek 1. Dr. Iványi Péter

2019, Funkcionális programozás. 2. el adás. MÁRTON Gyöngyvér

2018, Funkcionális programozás

Sztringkezelő függvények. A string típusú változók kezelése, használata és szerepük a feldolgozás során

A programozás alapjai előadás. [<struktúra változó azonosítók>] ; Dinamikus adatszerkezetek:

Osztálytervezés és implementációs ajánlások

Programozás C++ -ban 2007/4

Osztálytervezés és implementációs ajánlások

Tájékoztató. Használható segédeszköz: -

Bevezetés: az SQL-be

1. Bevezetés A C++ nem objektumorientált újdonságai 3

JAVA SE/ME tanfolyam tematika

Láncolt Listák. Adat1 Adat2 Adat3 ø. Adat1 Adat2 ø Adat3

Pénzügyi algoritmusok

Objektumorientált Programozás VI.

A Python programozási nyelv

Programozás alapjai II. (7. ea) C++

Kifejezések. Kozsik Tamás. December 11, 2016

file./script.sh > Bourne-Again shell script text executable << tartalmat néz >>

Informatikai Kar. 3. fejezet. alapismeretek. Giachetta Roberto

Mindenki abból a három tantárgyból tesz szigorlatot, amelyet hallgatott.

ADATBÁZISOK gyakorlat: SQL 2. rész SELECT

Lekérdezések az SQL-ben 2.rész

Kalapácsvetés 2016 szöveges

Szkriptnyelvek. 1. UNIX shell

C# Nyelvi Elemei. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei / 18

Adatbázis, adatbázis-kezelő

Adatbázisok-1 előadás Előadó: dr. Hajas Csilla

PowerShell v2.0 alapok. Nagy Miklós

Előfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból

1. Az adatbázis fogalma, fontosabb összetevÿi, felhasználási módjai

A verem (stack) A verem egy olyan struktúra, aminek a tetejéről kivehetünk egy (vagy sorban több) elemet. A verem felhasználása

Komputeralgebra rendszerek

Web-technológia PHP-vel

BME MOGI Gépészeti informatika 8.

Átírás:

Komputeralgebra Rendszerek Összetett adatszerkezetek a MAPLE -ben Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2014. március 11. TARTALOMJEGYZÉK 1 of 66

TARTALOMJEGYZÉK I 1 TARTALOMJEGYZÉK 2 Kifejezéssorozatok 3 Halmazok 4 Listák 5 Sztringek 6 Vermek, sorok Vermek Sorok Prioritásos adatszerkezetek 7 Rekordok TARTALOMJEGYZÉK 2 of 66

KIFEJEZÉSSOROZATOK exprseq Kifejezéssorozatok 3 of 66

KIFEJEZÉSSOROZATOK exprseq Vesszővel elválasztott kifejezéssorozat Kifejezéssorozatok 4 of 66

KIFEJEZÉSSOROZATOK exprseq Vesszővel elválasztott kifejezéssorozat A függvényhívások argumentumlistája: args, nargs Kifejezéssorozatok 5 of 66

KIFEJEZÉSSOROZATOK exprseq Vesszővel elválasztott kifejezéssorozat A függvényhívások argumentumlistája: args, nargs Típusa exprseq: exprseq expr 1 expr 2... Kifejezéssorozatok 6 of 66

KIFEJEZÉSSOROZATOK exprseq Vesszővel elválasztott kifejezéssorozat A függvényhívások argumentumlistája: args, nargs Típusa exprseq: exprseq expr 1 expr 2... Üres sorozat: NULL Kifejezéssorozatok 7 of 66

KIFEJEZÉSSOROZATOK exprseq Vesszővel elválasztott kifejezéssorozat A függvényhívások argumentumlistája: args, nargs Típusa exprseq: exprseq expr 1 expr 2... Üres sorozat: NULL Generálás: seq(expr, range), x$n (leggyakrabban a diff-el) Kifejezéssorozatok 8 of 66

KIFEJEZÉSSOROZATOK exprseq Vesszővel elválasztott kifejezéssorozat A függvényhívások argumentumlistája: args, nargs Típusa exprseq: exprseq expr 1 expr 2... Üres sorozat: NULL Generálás: seq(expr, range), x$n (leggyakrabban a diff-el) Indexelés (szelektor): [n], visszafelé [-n] Kifejezéssorozatok 9 of 66

KIFEJEZÉSSOROZATOK exprseq Vesszővel elválasztott kifejezéssorozat A függvényhívások argumentumlistája: args, nargs Típusa exprseq: exprseq expr 1 expr 2... Üres sorozat: NULL Generálás: seq(expr, range), x$n (leggyakrabban a diff-el) Indexelés (szelektor): [n], visszafelé [-n] A MAPLE -ben nincsen exprseq adattípus, bár a whattype függvény exprsq-t ad vissza azoknál az objektumoknál, melyek kifejezéssorozatok. Kifejezéssorozatok 10 of 66

KIFEJEZÉSSOROZATOK exprseq Vesszővel elválasztott kifejezéssorozat A függvényhívások argumentumlistája: args, nargs Típusa exprseq: exprseq expr 1 expr 2... Üres sorozat: NULL Generálás: seq(expr, range), x$n (leggyakrabban a diff-el) Indexelés (szelektor): [n], visszafelé [-n] A MAPLE -ben nincsen exprseq adattípus, bár a whattype függvény exprsq-t ad vissza azoknál az objektumoknál, melyek kifejezéssorozatok. (MAPLE Help) Kifejezéssorozatok 11 of 66

Halmazok 12 of 66 HALMAZOK set

Halmazok 13 of 66 HALMAZOK set Sorozat kapcsoszárójelek között: {expr 1, expr 2,...}. Üres halmaz {};

Halmazok 14 of 66 HALMAZOK set Sorozat kapcsoszárójelek között: {expr 1, expr 2,...}. Üres halmaz {}; Egy elem csak egyszer fordul elő, nincs rendezés;

Halmazok 15 of 66 HALMAZOK set Sorozat kapcsoszárójelek között: {expr 1, expr 2,...}. Üres halmaz {}; Egy elem csak egyszer fordul elő, nincs rendezés; Alapműveletek: union, minus, intersect. Használhatók a műveleti jelek is;

Halmazok 16 of 66 HALMAZOK set Sorozat kapcsoszárójelek között: {expr 1, expr 2,...}. Üres halmaz {}; Egy elem csak egyszer fordul elő, nincs rendezés; Alapműveletek: union, minus, intersect. Használhatók a műveleti jelek is; Lekérdezés: member, in;

Halmazok 17 of 66 HALMAZOK set Sorozat kapcsoszárójelek között: {expr 1, expr 2,...}. Üres halmaz {}; Egy elem csak egyszer fordul elő, nincs rendezés; Alapműveletek: union, minus, intersect. Használhatók a műveleti jelek is; Lekérdezés: member, in; Kiválasztás: select, remove, selectremove select(funct, set, b 1,b 2,...);

Halmazok 18 of 66 HALMAZOK set Sorozat kapcsoszárójelek között: {expr 1, expr 2,...}. Üres halmaz {}; Egy elem csak egyszer fordul elő, nincs rendezés; Alapműveletek: union, minus, intersect. Használhatók a műveleti jelek is; Lekérdezés: member, in; Kiválasztás: select, remove, selectremove select(funct, set, b 1,b 2,...); Egyéb: combinat csomag, pl. powerset.

Listák 19 of 66 LISTÁK list, listlist

LISTÁK list, listlist Sorozat szögletes zárójelek között: [expr 1, expr 2,...]. Üres lista: []; Listák 20 of 66

LISTÁK list, listlist Sorozat szögletes zárójelek között: [expr 1, expr 2,...]. Üres lista: []; Egy elem többször is előfordul, rendezéstartó, könnyen adható új érték elemnek.; Listák 21 of 66

LISTÁK list, listlist Sorozat szögletes zárójelek között: [expr 1, expr 2,...]. Üres lista: []; Egy elem többször is előfordul, rendezéstartó, könnyen adható új érték elemnek.; Rendezés: sort(list,mode). Helyben történik; Listák 22 of 66

LISTÁK list, listlist Sorozat szögletes zárójelek között: [expr 1, expr 2,...]. Üres lista: []; Egy elem többször is előfordul, rendezéstartó, könnyen adható új érték elemnek.; Rendezés: sort(list,mode). Helyben történik; Eleme member, in eleme - vizsgálat; Listák 23 of 66

LISTÁK list, listlist Sorozat szögletes zárójelek között: [expr 1, expr 2,...]. Üres lista: []; Egy elem többször is előfordul, rendezéstartó, könnyen adható új érték elemnek.; Rendezés: sort(list,mode). Helyben történik; Eleme member, in eleme - vizsgálat; Szelektorok:T[],T[i], T[-i], T[i..j], T[i,j,...], T[i..j,k,...]; Listák 24 of 66

LISTÁK list, listlist Sorozat szögletes zárójelek között: [expr 1, expr 2,...]. Üres lista: []; Egy elem többször is előfordul, rendezéstartó, könnyen adható új érték elemnek.; Rendezés: sort(list,mode). Helyben történik; Eleme member, in eleme - vizsgálat; Szelektorok:T[],T[i], T[-i], T[i..j], T[i,j,...], T[i..j,k,...]; A ListTools csomag: Listák 25 of 66

LISTÁK list, listlist Sorozat szögletes zárójelek között: [expr 1, expr 2,...]. Üres lista: []; Egy elem többször is előfordul, rendezéstartó, könnyen adható új érték elemnek.; Rendezés: sort(list,mode). Helyben történik; Eleme member, in eleme - vizsgálat; Szelektorok:T[],T[i], T[-i], T[i..j], T[i,j,...], T[i..j,k,...]; A ListTools csomag: Flatten Listák 26 of 66

LISTÁK list, listlist Sorozat szögletes zárójelek között: [expr 1, expr 2,...]. Üres lista: []; Egy elem többször is előfordul, rendezéstartó, könnyen adható új érték elemnek.; Rendezés: sort(list,mode). Helyben történik; Eleme member, in eleme - vizsgálat; Szelektorok:T[],T[i], T[-i], T[i..j], T[i,j,...], T[i..j,k,...]; A ListTools csomag: Flatten Rotate, Reverse Listák 27 of 66

LISTÁK list, listlist Sorozat szögletes zárójelek között: [expr 1, expr 2,...]. Üres lista: []; Egy elem többször is előfordul, rendezéstartó, könnyen adható új érték elemnek.; Rendezés: sort(list,mode). Helyben történik; Eleme member, in eleme - vizsgálat; Szelektorok:T[],T[i], T[-i], T[i..j], T[i,j,...], T[i..j,k,...]; A ListTools csomag: Flatten Rotate, Reverse Categorize Listák 28 of 66

SZTRINGEK string Sztringek 29 of 66

SZTRINGEK string 64-biten: 34.359.738.335 karakter; Sztringek 30 of 66

SZTRINGEK string 64-biten: 34.359.738.335 karakter; Megadása: s:="czirbusz Sándor"; Sztringek 31 of 66

SZTRINGEK string 64-biten: 34.359.738.335 karakter; Megadása: s:="czirbusz Sándor"; Idézőjel sztringen belül: vagy "", vagy \"; Sztringek 32 of 66

SZTRINGEK string 64-biten: 34.359.738.335 karakter; Megadása: s:="czirbusz Sándor"; Idézőjel sztringen belül: vagy "", vagy \"; Konkatenáció:, cat(). Literálok whitespace-el is; Sztringek 33 of 66

SZTRINGEK string 64-biten: 34.359.738.335 karakter; Megadása: s:="czirbusz Sándor"; Idézőjel sztringen belül: vagy "", vagy \"; Konkatenáció:, cat(). Literálok whitespace-el is; Keresés: searchtext(pattern, string, range), vagy SearchText(pattern, string, range); Sztringek 34 of 66

SZTRINGEK string 64-biten: 34.359.738.335 karakter; Megadása: s:="czirbusz Sándor"; Idézőjel sztringen belül: vagy "", vagy \"; Konkatenáció:, cat(). Literálok whitespace-el is; Keresés: searchtext(pattern, string, range), vagy SearchText(pattern, string, range); Részsztring: substring(string, range); Sztringek 35 of 66

SZTRINGEK string 64-biten: 34.359.738.335 karakter; Megadása: s:="czirbusz Sándor"; Idézőjel sztringen belül: vagy "", vagy \"; Konkatenáció:, cat(). Literálok whitespace-el is; Keresés: searchtext(pattern, string, range), vagy SearchText(pattern, string, range); Részsztring: substring(string, range); Egyéb: StringTools csomag. Sztringek 36 of 66

VERMEK I A régi konstrukció: stack Vermek, sorok 37 of 66

VERMEK I A régi konstrukció: stack stack[new](x 1,..., x n ) - Új létrehozása, opcionálisan elemekkel; Vermek, sorok 38 of 66

VERMEK I A régi konstrukció: stack stack[new](x 1,..., x n ) - Új létrehozása, opcionálisan elemekkel; stack[push](x, s); Vermek, sorok 39 of 66

VERMEK I A régi konstrukció: stack stack[new](x 1,..., x n ) - Új létrehozása, opcionálisan elemekkel; stack[push](x, s); stack[pop](s); Vermek, sorok 40 of 66

VERMEK I A régi konstrukció: stack stack[new](x 1,..., x n ) - Új létrehozása, opcionálisan elemekkel; stack[push](x, s); stack[pop](s); Információk: stack[empty](s), stack[top](s), stack[depth](s). Vermek, sorok 41 of 66

VERMEK II Az objektumoreintált konstrukciók: Stack Vermek, sorok 42 of 66

VERMEK II Az objektumoreintált konstrukciók: Stack Konsruktorok: Vermek, sorok 43 of 66

VERMEK II Az objektumoreintált konstrukciók: Stack Konsruktorok: SimpleStack() a szokásos verem, objektumorientált köntösben; Vermek, sorok 44 of 66

VERMEK II Az objektumoreintált konstrukciók: Stack Konsruktorok: SimpleStack() a szokásos verem, objektumorientált köntösben; BoundedStack(bound::posint) a stack legfeljebb a megadott méretű lehet; Vermek, sorok 45 of 66

VERMEK II Az objektumoreintált konstrukciók: Stack Konsruktorok: SimpleStack() a szokásos verem, objektumorientált köntösben; BoundedStack(bound::posint) a stack legfeljebb a megadott méretű lehet; MeteredStack() a naplózó verem. Vermek, sorok 46 of 66

VERMEK II Az objektumoreintált konstrukciók: Stack Konsruktorok: SimpleStack() a szokásos verem, objektumorientált köntösben; BoundedStack(bound::posint) a stack legfeljebb a megadott méretű lehet; MeteredStack() a naplózó verem. Műveletek: s:-push(e::anything), s:-pop(), s:-empty(), s:-top(), s:-depth(); Vermek, sorok 47 of 66

VERMEK II Az objektumoreintált konstrukciók: Stack Konsruktorok: SimpleStack() a szokásos verem, objektumorientált köntösben; BoundedStack(bound::posint) a stack legfeljebb a megadott méretű lehet; MeteredStack() a naplózó verem. Műveletek: s:-push(e::anything), s:-pop(), s:-empty(), s:-top(), s:-depth(); A MeteredStack() többlete: s:-stats(). Vermek, sorok 48 of 66

SOROK A régi: queue Az új: Vermek, sorok 49 of 66

SOROK A régi: queue Létrehozás: hasonlóan a stack-hez; Az új: Vermek, sorok 50 of 66

SOROK A régi: queue Létrehozás: hasonlóan a stack-hez; Lehetőségek: new, empty,enqueue sor végére szúrás, dequeue utolsó elem; Az új: Vermek, sorok 51 of 66

SOROK A régi: queue Létrehozás: hasonlóan a stack-hez; Lehetőségek: new, empty,enqueue sor végére szúrás, dequeue utolsó elem; Egyéb: front - első elem törlés nélkül, lengt, clear, reverse; Az új: Vermek, sorok 52 of 66

SOROK A régi: queue Az új: Létrehozás: hasonlóan a stack-hez; Lehetőségek: new, empty,enqueue sor végére szúrás, dequeue utolsó elem; Egyéb: front - első elem törlés nélkül, lengt, clear, reverse; Használat: with(queue). Vermek, sorok 53 of 66

SOROK A régi: queue Az új: Queue Létrehozás: hasonlóan a stack-hez; Lehetőségek: new, empty,enqueue sor végére szúrás, dequeue utolsó elem; Egyéb: front - első elem törlés nélkül, lengt, clear, reverse; Használat: with(queue). A Simplestack és a queue-ból kitalálható a szintaxis. Vermek, sorok 54 of 66

PRIORITÁSOS ADATSZERKEZETEK heap Vermek, sorok 55 of 66

PRIORITÁSOS ADATSZERKEZETEK heap heap[new](f,x1,x2,..xn). f: a rendezést megvalósító logikai fv, pl lexorder; Vermek, sorok 56 of 66

PRIORITÁSOS ADATSZERKEZETEK heap heap[new](f,x1,x2,..xn). f: a rendezést megvalósító logikai fv, pl lexorder; insert, extract, empty, max, size. Vermek, sorok 57 of 66

PRIORITÁSOS ADATSZERKEZETEK heap heap[new](f,x1,x2,..xn). f: a rendezést megvalósító logikai fv, pl lexorder; insert, extract, empty, max, size. priority queue Vermek, sorok 58 of 66

PRIORITÁSOS ADATSZERKEZETEK heap heap[new](f,x1,x2,..xn). f: a rendezést megvalósító logikai fv, pl lexorder; insert, extract, empty, max, size. priority queue Konstruálás: initialize(pq); Vermek, sorok 59 of 66

PRIORITÁSOS ADATSZERKEZETEK heap heap[new](f,x1,x2,..xn). f: a rendezést megvalósító logikai fv, pl lexorder; insert, extract, empty, max, size. priority queue Konstruálás: initialize(pq); Műveletek: insert(newrecord, pq), extract(pq); Vermek, sorok 60 of 66

PRIORITÁSOS ADATSZERKEZETEK heap heap[new](f,x1,x2,..xn). f: a rendezést megvalósító logikai fv, pl lexorder; insert, extract, empty, max, size. priority queue Konstruálás: initialize(pq); Műveletek: insert(newrecord, pq), extract(pq); Használata: with(priqueue). Vermek, sorok 61 of 66

Rekordok 62 of 66 REKORDOK record

Rekordok 63 of 66 REKORDOK record Pascal stílusú rekordmegvalósítása;

Rekordok 64 of 66 REKORDOK record Pascal stílusú rekordmegvalósítása; Konstruktor: Record(nev 1 =ert 1,nev 2 =ert 2,...);

Rekordok 65 of 66 REKORDOK record Pascal stílusú rekordmegvalósítása; Konstruktor: Record(nev 1 =ert 1,nev 2 =ert 2,...); Implementáció: modulokkal;

Rekordok 66 of 66 REKORDOK record Pascal stílusú rekordmegvalósítása; Konstruktor: Record(nev 1 =ert 1,nev 2 =ert 2,...); Implementáció: modulokkal; Hivatkozás: rec_name:-

Rekordok 67 of 66 REKORDOK record Pascal stílusú rekordmegvalósítása; Konstruktor: Record(nev 1 =ert 1,nev 2 =ert 2,...); Implementáció: modulokkal; Hivatkozás: rec_name:- Egyenlőség tesztelése: verify(expr1, expr2, record)