https://wikisofia.cz/w/api.php?action=feedcontributions&user=V%C3%A1clav+Sahula+%28sahulav%40angeluss.cz%29&feedformat=atomWikisofia - Příspěvky uživatele [cs]2024-03-29T15:20:21ZPříspěvky uživateleMediaWiki 1.33.0https://wikisofia.cz/w/index.php?title=Datov%C3%A9_struktury&diff=4774Datové struktury2014-06-17T10:01:52Z<p>Václav Sahula (sahulav@angeluss.cz): </p>
<hr />
<div>Datové struktury jsou programové konstrukce sloužící k efektivní správě dat v počítačovém softwaru. Data jsou v počítači reprezentována různými [[datový typ|datovými typy]]. Ty lze dále skládat do struktur, které umožňují s daty snadněji a rychleji pracovat.<br />
<br />
Datové struktury patří mezi [[abstraktní datové typy|abstraktní datové typy (ADT)]]. Jde o programové abstrakce nezávislé na konkrétním způsobu implementace, programovacím jazyku, nebo typu ukládaných dat. Jednotlivé datové struktury definují jak svou vnitřní strukturu, tak i operace, které je možné nad daty provádět.<br />
<br />
V dnešní době známe desítky základních i pokročilých datových struktur. Každá je vhodná k plnění jiných funkcí. Existují obecné datové struktury používané v širokém spektru programů, ale i úzce specializované vhodné k použití ve velmi specifických případech. Pro datovou strukturu a její využití je rozhodující především jejich paměťová náročnost a škála základních operací s jejich [[asymptotická složitost|asymptotickou složitostí]].<br />
<br />
===Operace===<br />
<br />
Operace jsou úkony, které lze v rámci dané datové struktury nad daty provádět. Většina operací souvisí s efektivním ukládáním, vyhledáváním, řazením, tříděním nebo mazáním dat ve struktuře. Pro každou operaci lze vypočítat [[asymptotická složitost|asymptotickou složitost]] udávající rychlost s kterou se daná operace provede.<br />
<br />
==Základní datové struktury==<br />
===Pole (Array)===<br />
Pole si můžeme představit jako uspořádanou matici prvků určitého datového typu. Prvky dat jsou v poli ukládány do paměti v navazujících blocích za sebe a jsou identifikovány pomocí indexu. Pozici prvku v paměti počítače pak lze dopočítat pomocí jednoduché rovnice: <br />
<br />
adresa prvku v paměti = adresa počátku pole + index * velikost prvku<br />
<br />
Pole mohou mít libovolný počet rozměrů. Nejjednodušším typem jsou jednorozměrná neboli lineární pole. Dvourozměrná pole někdy nazýváme tabulka. Přístup k prvkům vícerozměrného pole se řeší použitím více indexů podobně jako při práci s maticemi. <br />
<br />
*statická pole - jsou pole s pevně daným počtem prvků<br />
*dynamická pole - jsou pole s proměnlivým počtem prvků<br />
<br />
===Spojový seznam (Linked list)=== <br />
<br />
Je datová struktura určená k ukládání dat předem neznámé délky. Spojové seznamy jsou tvořeny vzájemně propojenými uzly. Každý uzel obsahuje jeden datový prvek a jeden nebo více ukazatelů na další uzly. Na základě použitých ukazatelů rozlišujeme několik druhů spojových seznamů:''<ref>Computer Science 15-121, Victor S.Adamchik, CMU [online]. 2009 [2014-06-17]. Dostupné z: http://www.cs.cmu.edu/~adamchik/15-121/lectures/Linked%20Lists/linked%20lists.html</ref><br />
<br />
====Jednosměrně zřetězený spojový seznam====<br />
Nejjednodušší varianta spojového seznamu. Jeho prvky obsahují pouze ukazatel na další prvek v seznamu. Jednosměrný spojový seznam lze prohledávat pouze jedním směrem od počátečního prvku struktury dál. Jednosměrné prohledávání je v mnoha případech neefektivní, proto vznikly další varianty spojových seznamů.<br />
<br />
====Obousměrně zřetězený spojový seznam====<br />
Uzly obousměrně zřetězeného seznamu obsahují dva ukazatele na následující a předchozí uzel. Díky zpětnému zřetězení se jde při prohledávání obousměrně zřetězeného seznamu i vracet.<br />
<br />
====Kruhový spojový seznam====<br />
Kruhový seznam je speciálním typem seznamu zřetězeným do kruhu. Poslední uzel seznamu obsahuje místo prázdného odkazu ukazatel na první prvek listu. Kruhový seznam lze vytvořit v obou variantách zřetězení. Obousměrné zřetězení umožňuje tento typ spojového seznamu procházet libovolně v obou směrech od počátku i od konce.<br />
<br />
===Fronta (Queue)===<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu FIFO (First-In-First-Out). Prvek uložený ve frontě jako první, je jako první na řadě pro výběr. Fronta aktivně pracuje pouze s prvním a posledním zařazeným prvkem. K tomuto účelu používá sadu tří základních operací: <br />
<br />
*Zařazení prvku (Equeue)<br />
*Vyřazení prvku (Dequeue)<br />
*Test prázdnoty (Empty)<br />
<br />
Speciálním případem front jsou prioritní fronty. V nich jsou prvky řazeny na základě priority. Zařazený prvek s vyšší prioritou předbíhá méně prioritní prvky. Z prioritní fronty je vybírán vždy prvek s nejvyšší prioritou.''<ref>Computer Science 15-121, Victor S.Adamchik, CMU [online]. 2009 [2014-06-17]. Dostupné z: http://www.cs.cmu.edu/~adamchik/15-121/lectures/Stacks%20and%20Queues/Stacks%20and%20Queues.html</ref><br />
<br />
===Zásobník (Stack)===<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků. Často se implementuje jako spojový seznam fungující na principu LIFO (Last-In-First-Out). Na rozdíl od fronty se ze zásobníku prvky vybírají v opačném pořadí než v jakém byly vloženy. Zásobník tak aktivně pracuje pouze s posledním vloženým prvkem. Díky své rychlosti se zásobníky využívají především pro uchovávání výsledků mezivýpočtů a rekurzivních stavů. Základní sada operací zásobníku obsahuje instrukce:''<ref>'Stack definition', The Tech Terms Computer Dictionary, Per. Christensson, Sharpened Productions [online]. 2011 [2014-06-17]. Dostupné z: http://www.techterms.com/definition/stack</ref> ''<ref>Computer Science 15-121, Victor S.Adamchik, CMU [online]. 2009 [2014-06-17]. Dostupné z: http://www.cs.cmu.edu/~adamchik/15-121/lectures/Stacks%20and%20Queues/Stacks%20and%20Queues.html</ref><br />
<br />
*Vložit (Push)<br />
*Vybrat (Pop)<br />
*Test prázdnoty (Empty)<br />
<br />
==Pokročilé datové struktury==<br />
Mezi pokročilé datové struktury řadíme především stromy, hashe a nejrůznější grafové struktury. Konstrukčně složitější datové struktury mají význam především při efektivním třídění a vyhledávání dat.<br />
<br />
===Stromové struktury (Tree)===<br />
<br />
Slouží k uchovávání hierarchicky uspořádaných dat jako jsou abecední seznamy, organizační struktury, nebo hierarchie souborů. Ve stromových strukturách jsou data řazeny od tzv. kořene (root) pomocí větvení skrze vnitřní uzly (internal nodes) až k nejnižším prvkům struktury – listům (leaf).''<ref>Dictionary of Algorithms and Data Structures, Paul E. Black, NITS [online]. 1998 [2014-06-10]. Dostupné z: http://xlinux.nist.gov/dads//HTML/tree.html</ref> <br />
<br />
Z hlediska implementace existuje mnoho různých stromových struktur. Mezi nejznámější patří binární stromy, R-stromy, nebo AVL stromy. Vlastnostmi stromů se podrobně zabývá [[teorie grafů]]. <ref>Data Structures, Wikibooks [online]. 1998 [2014-06-10]. Dostupné z: http://en.wikibooks.org/wiki/Data_Structures/Trees</ref><br />
<br />
===Grafy (Graph)===<br />
<br />
Grafy jsou datové struktury složené z uzlů (node, vertex) a hran (edges) a jejich vzájemných incidencí(adjacency). Uzly grafu uchovávají data. Hrany jsou spojnice uzlů označující vazby, nebo vztahy mezi nimi. ''<ref>Dictionary of Algorithms and Data Structures, Paul E. Black, NITS [online]. 1998 [2014-06-10]. Dostupné z: http://xlinux.nist.gov/dads//HTML/graph.html</ref><br />
<br />
Z hlediska vnitřní struktury rozlišujeme dva základní typy grafů:<br />
<br />
*Neorientovaný graf - hrany nerozlišují směr<br />
*Orientovaný graf - hrany mají určen směr od počátečního do koncového uzlu<br />
<br />
Problematikou grafů se v počítačové vědě podrobně zabývá [[teorie grafů]].<br />
<br />
===Hashe (Hash)===<br />
Hash je struktura používaná k sestavování asociativních polí, které za pomoci klíče (key) a správné hashovací funkce (hash function) umožňují [[indexování]]. Jde o metodu,která řádově snižuje asymptotickou složitost vyhledávání až na logaritmickou úroveň. Indexování je hojně používáno například v [[databáze|databázích]], kde urychluje vyhledávání.''<ref>Computer Science 15-121, Victor S.Adamchik, CMU [online]. 2009 [2014-06-17]. Dostupné z: http://www.cs.cmu.edu/~adamchik/15-121/lectures/Hashing/hashing.html</ref><br />
<br />
== Zdroje ==<br />
<br />
=== Poznámky v textu ===<br />
<references /><br />
<br />
=== Seznam použité literatury ===<br />
*Dinesh P. Mehta, Sartaj Sahni. ''Handbook of Data Structures and Applications'', Chapman & Hall/CRC Computer and Information Science Series, 2004.<br />
<br />
* Alfred V. Aho, Jeffrey D. Ullman, John E. Hopcroft. ''Data Structures and Algorithms''. Addison Wesley, 1983.<br />
<br />
* Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. ''Introduction to Algorithms''. McGraw-Hill, 2001.<br />
<br />
* Kurt Mehlhorn, Peter Sanders. ''Algorithms and Data Structures''. Springer, 2008.<br />
<br />
*S.B. Kishor. ''Data Structures, Edition 3''. Das Ganu Prakashan, Nagpur, 2008.</div>Václav Sahula (sahulav@angeluss.cz)https://wikisofia.cz/w/index.php?title=Datov%C3%A9_struktury&diff=4748Datové struktury2014-06-16T09:41:51Z<p>Václav Sahula (sahulav@angeluss.cz): /* Fronta (Queue) */</p>
<hr />
<div>Datové struktury jsou programové konstrukce sloužící k efektivní správě dat v počítačovém softwaru. Data jsou v počítači reprezentována různými [[datový typ|datovými typy]]. Ty lze dále skládat do struktur, které umožňují s daty snadněji a rychleji pracovat.<br />
<br />
Datové struktury patří mezi [[abstraktní datové typy|abstraktní datové typy (ADT)]]. Jde o programové abstrakce nezávislé na konkrétním způsobu implementace, programovacím jazyku, nebo typu ukládaných dat. Jednotlivé datové struktury definují jak svou vnitřní strukturu, tak i operace, které je možné nad daty provádět.<br />
<br />
V dnešní době známe desítky základních i pokročilých datových struktur. Každá je vhodná k plnění jiných funkcí. Existují obecné datové struktury používané v širokém spektru programů, ale i úzce specializované vhodné k použití ve velmi specifických případech. Pro datovou strukturu a její využití je rozhodující především jejich paměťová náročnost a škála základních operací s jejich [[asymptotická složitost|asymptotickou složitostí]].<br />
<br />
==Operace==<br />
<br />
Operace jsou úkony, které lze v rámci dané datové struktury nad daty provádět. Většina operací souvisí s efektivním ukládáním, vyhledáváním, řazením, tříděním nebo mazáním dat ve struktuře. Pro každou operaci lze vypočítat [[asymptotická složitost|asymptotickou složitost]] udávající rychlost s kterou se daná operace provede.<br />
<br />
=Základní datové struktury=<br />
==Pole (Array)==<br />
Pole si můžeme představit jako uspořádanou matici prvků určitého datového typu. Prvky dat jsou v poli ukládány do paměti v navazujících blocích za sebe a jsou identifikovány pomocí indexu. Pozici prvku v paměti počítače pak lze dopočítat pomocí jednoduché rovnice: <br />
<br />
adresa prvku v paměti = adresa počátku pole + index * velikost prvku<br />
<br />
Pole mohou mít libovolný počet rozměrů. Nejjednodušším typem jsou jednorozměrná neboli lineární pole. Dvourozměrná pole někdy nazýváme tabulka. Přístup k prvkům vícerozměrného pole se řeší použitím více indexů podobně jako při práci s maticemi. <br />
<br />
*statická pole - jsou pole s pevně daným počtem prvků<br />
*dynamická pole - jsou pole s proměnlivým počtem prvků<br />
<br />
==Fronta (Queue)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu FIFO (First-In-First-Out). Prvek uložený ve frontě jako první, je jako první na řadě pro výběr. Fronta aktivně pracuje pouze s prvním a posledním zařazeným prvkem. K tomuto účelu používá sadu tří základních operací: <br />
<br />
*Zařazení prvku (Equeue)<br />
*Vyřazení prvku (Dequeue)<br />
*Test prázdnoty (Empty)<br />
<br />
Speciálním případem front jsou prioritní fronty. V nich jsou prvky řazeny na základě priority. Zařazený prvek s vyšší prioritou předbíhá méně prioritní prvky. Z prioritní fronty je vybírán vždy prvek s nejvyšší prioritou.<br />
<br />
==Zásobník (Stack)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu LIFO (Last-In-First-Out). Na rozdíl od fronty se ze zásobníku prvky vybírají v opačném pořadí než v jakém byly vloženy. Zásobník tak aktivně pracuje pouze s posledním vloženým prvkem. Díky své rychlosti se zásobníky využívají především pro uchovávání výsledků mezivýpočtů a rekurzivních stavů. Základní sada operací zásobníku obsahuje instrukce:<br />
<br />
*Vložit (Push)<br />
*Vybrat (Pop)<br />
*Test prázdnoty (Empty)<br />
<br />
==Spojový seznam (Linked list)==<br />
Je datová struktura určená k ukládání dat předem neznámé délky. Spojové seznamy jsou tvořeny vzájemně propojenými uzly. Každý uzel obsahuje jeden datový prvek a jeden nebo více ukazatelů na další uzly. Na základě použitých ukazatelů rozlišujeme několik druhů spojových seznamů:<br />
<br />
===Jednosměrně zřetězený spojový seznam===<br />
Nejjednodušší varianta spojového seznamu. Jeho prvky obsahují pouze ukazatel na další prvek v seznamu. Jednosměrný spojový seznam lze prohledávat pouze jedním směrem od počátečního prvku struktury dál. Jednosměrné prohledávání je v mnoha případech neefektivní, proto vznikly další varianty spojových seznamů.<br />
<br />
===Obousměrně zřetězený spojový seznam===<br />
Uzly obousměrně zřetězeného seznamu obsahují dva ukazatele na následující a předchozí uzel. Díky zpětnému zřetězení se jde při prohledávání obousměrně zřetězeného seznamu i vracet.<br />
<br />
===Kruhový spojový seznam===<br />
Kruhový seznam je speciálním typem seznamu zřetězeným do kruhu. Poslední uzel seznamu obsahuje místo prázdného odkazu ukazatel na první prvek listu. Kruhový seznam lze vytvořit v obou variantách zřetězení. Obousměrné zřetězení umožňuje tento typ spojového seznamu procházet libovolně v obou směrech od počátku i od konce.<br />
<br />
=Pokročilé datové struktury=<br />
Mezi pokročilé datové struktury řadíme především stromy, hashe a nejrůznější grafové struktury. Konstrukčně složitější datové struktury mají význam především při efektivním třídění a vyhledávání dat.<br />
<br />
==Stromové struktury (Tree)==<br />
<br />
Slouží k uchovávání hierarchicky uspořádaných dat jako jsou abecední seznamy, organizační struktury, nebo hierarchie souborů. Ve stromových strukturách jsou data řazeny od tzv. kořene (root) pomocí větvení skrze vnitřní uzly (internal nodes) až k nejnižším prvkům struktury – listům (leaf).''<ref>Dictionary of Algorithms and Data Structures, Paul E. Black, NITS [online]. 1998 [2014-06-10]. Dostupné z: http://xlinux.nist.gov/dads//HTML/tree.html</ref> Stromy jsou efektivní především při prohledávání setříděných dat s logaritmickou složitostí. <br />
<br />
Z hlediska implementace existuje mnoho různých stromových struktur. Mezi nejznámější patří binární stromy, R-stromy, nebo AVL stromy. Vlastnostmi stromů se podrobně zabývá [[teorie grafů]]. <ref>Data Structures, Wikibooks [online]. 1998 [2014-06-10]. Dostupné z: http://en.wikibooks.org/wiki/Data_Structures/Trees</ref><br />
<br />
==Grafy (Graph)==<br />
<br />
Grafy jsou datové struktury složené z uzlů (nodes) a hran (edges) a jejich vzájemných incidencí. Uzly grafu uchovávají data. Hrany jsou spojnice uzlů označující vazby, nebo vztahy mezi nimi. Z hlediska vnitřní struktury rozlišujeme dva základní typy grafů:<br />
<br />
*Neorientovaný graf - hrany nerozlišují směr<br />
*Orientovaný graf - hrany mají určen směr od počátečního do koncového uzlu<br />
<br />
Problematikou grafů se v počítačové vědě podrobně zabývá [[teorie grafů]].<br />
<br />
==Hashe (Hash)==<br />
Hash je struktura používaná k sestavování asociativních polí, které za pomoci klíče (key) a správné hashovací funkce (hash function) umožňují indexování. Indexování je hojně používáno například v [[databáze|databázích]], kde urychluje vyhledávání.<br />
<br />
=== Zdroje ===<br />
<br />
==== Poznámky v textu ====<br />
<references /><br />
<br />
==== Seznam použité literatury ====<br />
*Dinesh P. Mehta, Sartaj Sahni. ''Handbook of Data Structures and Applications'', Chapman & Hall/CRC Computer and Information Science Series, 2004.<br />
<br />
* Alfred V. Aho, Jeffrey D. Ullman, John E. Hopcroft. ''Data Structures and Algorithms''. Addison Wesley, 1983.<br />
<br />
* Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. ''Introduction to Algorithms''. McGraw-Hill, 2001.<br />
<br />
* Kurt Mehlhorn, Peter Sanders. ''Algorithms and Data Structures''. Springer, 2008.<br />
<br />
*S.B. Kishor ''Data Structures, Edition 3''. Das Ganu Prakashan, Nagpur, 2008.</div>Václav Sahula (sahulav@angeluss.cz)https://wikisofia.cz/w/index.php?title=Datov%C3%A9_struktury&diff=4747Datové struktury2014-06-16T09:41:26Z<p>Václav Sahula (sahulav@angeluss.cz): /* Pole (Array) */</p>
<hr />
<div>Datové struktury jsou programové konstrukce sloužící k efektivní správě dat v počítačovém softwaru. Data jsou v počítači reprezentována různými [[datový typ|datovými typy]]. Ty lze dále skládat do struktur, které umožňují s daty snadněji a rychleji pracovat.<br />
<br />
Datové struktury patří mezi [[abstraktní datové typy|abstraktní datové typy (ADT)]]. Jde o programové abstrakce nezávislé na konkrétním způsobu implementace, programovacím jazyku, nebo typu ukládaných dat. Jednotlivé datové struktury definují jak svou vnitřní strukturu, tak i operace, které je možné nad daty provádět.<br />
<br />
V dnešní době známe desítky základních i pokročilých datových struktur. Každá je vhodná k plnění jiných funkcí. Existují obecné datové struktury používané v širokém spektru programů, ale i úzce specializované vhodné k použití ve velmi specifických případech. Pro datovou strukturu a její využití je rozhodující především jejich paměťová náročnost a škála základních operací s jejich [[asymptotická složitost|asymptotickou složitostí]].<br />
<br />
==Operace==<br />
<br />
Operace jsou úkony, které lze v rámci dané datové struktury nad daty provádět. Většina operací souvisí s efektivním ukládáním, vyhledáváním, řazením, tříděním nebo mazáním dat ve struktuře. Pro každou operaci lze vypočítat [[asymptotická složitost|asymptotickou složitost]] udávající rychlost s kterou se daná operace provede.<br />
<br />
=Základní datové struktury=<br />
==Pole (Array)==<br />
Pole si můžeme představit jako uspořádanou matici prvků určitého datového typu. Prvky dat jsou v poli ukládány do paměti v navazujících blocích za sebe a jsou identifikovány pomocí indexu. Pozici prvku v paměti počítače pak lze dopočítat pomocí jednoduché rovnice: <br />
<br />
adresa prvku v paměti = adresa počátku pole + index * velikost prvku<br />
<br />
Pole mohou mít libovolný počet rozměrů. Nejjednodušším typem jsou jednorozměrná neboli lineární pole. Dvourozměrná pole někdy nazýváme tabulka. Přístup k prvkům vícerozměrného pole se řeší použitím více indexů podobně jako při práci s maticemi. <br />
<br />
*statická pole - jsou pole s pevně daným počtem prvků<br />
*dynamická pole - jsou pole s proměnlivým počtem prvků<br />
<br />
==Fronta (Queue)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu FIFO (First-In-First-Out). Prvek uložený ve frontě jako první, je jako první na řadě pro výběr. Fronta aktivně pracuje pouze s prvním a posledním zařazeným prvkem. K tomuto účelu používá sadu tří základních operací: *Zařazení prvku (Equeue)<br />
*Vyřazení prvku (Dequeue)<br />
*Test prázdnoty (Empty)<br />
<br />
Speciálním případem front jsou prioritní fronty. V nich jsou prvky řazeny na základě priority. Zařazený prvek s vyšší prioritou předbíhá méně prioritní prvky. Z prioritní fronty je vybírán vždy prvek s nejvyšší prioritou.<br />
<br />
==Zásobník (Stack)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu LIFO (Last-In-First-Out). Na rozdíl od fronty se ze zásobníku prvky vybírají v opačném pořadí než v jakém byly vloženy. Zásobník tak aktivně pracuje pouze s posledním vloženým prvkem. Díky své rychlosti se zásobníky využívají především pro uchovávání výsledků mezivýpočtů a rekurzivních stavů. Základní sada operací zásobníku obsahuje instrukce:<br />
<br />
*Vložit (Push)<br />
*Vybrat (Pop)<br />
*Test prázdnoty (Empty)<br />
<br />
==Spojový seznam (Linked list)==<br />
Je datová struktura určená k ukládání dat předem neznámé délky. Spojové seznamy jsou tvořeny vzájemně propojenými uzly. Každý uzel obsahuje jeden datový prvek a jeden nebo více ukazatelů na další uzly. Na základě použitých ukazatelů rozlišujeme několik druhů spojových seznamů:<br />
<br />
===Jednosměrně zřetězený spojový seznam===<br />
Nejjednodušší varianta spojového seznamu. Jeho prvky obsahují pouze ukazatel na další prvek v seznamu. Jednosměrný spojový seznam lze prohledávat pouze jedním směrem od počátečního prvku struktury dál. Jednosměrné prohledávání je v mnoha případech neefektivní, proto vznikly další varianty spojových seznamů.<br />
<br />
===Obousměrně zřetězený spojový seznam===<br />
Uzly obousměrně zřetězeného seznamu obsahují dva ukazatele na následující a předchozí uzel. Díky zpětnému zřetězení se jde při prohledávání obousměrně zřetězeného seznamu i vracet.<br />
<br />
===Kruhový spojový seznam===<br />
Kruhový seznam je speciálním typem seznamu zřetězeným do kruhu. Poslední uzel seznamu obsahuje místo prázdného odkazu ukazatel na první prvek listu. Kruhový seznam lze vytvořit v obou variantách zřetězení. Obousměrné zřetězení umožňuje tento typ spojového seznamu procházet libovolně v obou směrech od počátku i od konce.<br />
<br />
=Pokročilé datové struktury=<br />
Mezi pokročilé datové struktury řadíme především stromy, hashe a nejrůznější grafové struktury. Konstrukčně složitější datové struktury mají význam především při efektivním třídění a vyhledávání dat.<br />
<br />
==Stromové struktury (Tree)==<br />
<br />
Slouží k uchovávání hierarchicky uspořádaných dat jako jsou abecední seznamy, organizační struktury, nebo hierarchie souborů. Ve stromových strukturách jsou data řazeny od tzv. kořene (root) pomocí větvení skrze vnitřní uzly (internal nodes) až k nejnižším prvkům struktury – listům (leaf).''<ref>Dictionary of Algorithms and Data Structures, Paul E. Black, NITS [online]. 1998 [2014-06-10]. Dostupné z: http://xlinux.nist.gov/dads//HTML/tree.html</ref> Stromy jsou efektivní především při prohledávání setříděných dat s logaritmickou složitostí. <br />
<br />
Z hlediska implementace existuje mnoho různých stromových struktur. Mezi nejznámější patří binární stromy, R-stromy, nebo AVL stromy. Vlastnostmi stromů se podrobně zabývá [[teorie grafů]]. <ref>Data Structures, Wikibooks [online]. 1998 [2014-06-10]. Dostupné z: http://en.wikibooks.org/wiki/Data_Structures/Trees</ref><br />
<br />
==Grafy (Graph)==<br />
<br />
Grafy jsou datové struktury složené z uzlů (nodes) a hran (edges) a jejich vzájemných incidencí. Uzly grafu uchovávají data. Hrany jsou spojnice uzlů označující vazby, nebo vztahy mezi nimi. Z hlediska vnitřní struktury rozlišujeme dva základní typy grafů:<br />
<br />
*Neorientovaný graf - hrany nerozlišují směr<br />
*Orientovaný graf - hrany mají určen směr od počátečního do koncového uzlu<br />
<br />
Problematikou grafů se v počítačové vědě podrobně zabývá [[teorie grafů]].<br />
<br />
==Hashe (Hash)==<br />
Hash je struktura používaná k sestavování asociativních polí, které za pomoci klíče (key) a správné hashovací funkce (hash function) umožňují indexování. Indexování je hojně používáno například v [[databáze|databázích]], kde urychluje vyhledávání.<br />
<br />
=== Zdroje ===<br />
<br />
==== Poznámky v textu ====<br />
<references /><br />
<br />
==== Seznam použité literatury ====<br />
*Dinesh P. Mehta, Sartaj Sahni. ''Handbook of Data Structures and Applications'', Chapman & Hall/CRC Computer and Information Science Series, 2004.<br />
<br />
* Alfred V. Aho, Jeffrey D. Ullman, John E. Hopcroft. ''Data Structures and Algorithms''. Addison Wesley, 1983.<br />
<br />
* Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. ''Introduction to Algorithms''. McGraw-Hill, 2001.<br />
<br />
* Kurt Mehlhorn, Peter Sanders. ''Algorithms and Data Structures''. Springer, 2008.<br />
<br />
*S.B. Kishor ''Data Structures, Edition 3''. Das Ganu Prakashan, Nagpur, 2008.</div>Václav Sahula (sahulav@angeluss.cz)https://wikisofia.cz/w/index.php?title=Datov%C3%A9_struktury&diff=4741Datové struktury2014-06-16T09:04:05Z<p>Václav Sahula (sahulav@angeluss.cz): /* Stromové struktury (Tree) */</p>
<hr />
<div>Datové struktury jsou programové konstrukce sloužící k efektivní správě dat v počítačovém softwaru. Data jsou v počítači reprezentována různými [[datový typ|datovými typy]]. Ty lze dále skládat do struktur, které umožňují s daty snadněji a rychleji pracovat.<br />
<br />
Datové struktury patří mezi [[abstraktní datové typy|abstraktní datové typy (ADT)]]. Jde o programové abstrakce nezávislé na konkrétním způsobu implementace, programovacím jazyku, nebo typu ukládaných dat. Jednotlivé datové struktury definují jak svou vnitřní strukturu, tak i operace, které je možné nad daty provádět.<br />
<br />
V dnešní době známe desítky základních i pokročilých datových struktur. Každá je vhodná k plnění jiných funkcí. Existují obecné datové struktury používané v širokém spektru programů, ale i úzce specializované vhodné k použití ve velmi specifických případech. Pro datovou strukturu a její využití je rozhodující především jejich paměťová náročnost a škála základních operací s jejich [[asymptotická složitost|asymptotickou složitostí]].<br />
<br />
==Operace==<br />
<br />
Operace jsou úkony, které lze v rámci dané datové struktury nad daty provádět. Většina operací souvisí s efektivním ukládáním, vyhledáváním, řazením, tříděním nebo mazáním dat ve struktuře. Pro každou operaci lze vypočítat [[asymptotická složitost|asymptotickou složitost]] udávající rychlost s kterou se daná operace provede.<br />
<br />
=Základní datové struktury=<br />
==Pole (Array)==<br />
Pole si můžeme představit jako uspořádanou matici prvků určitého datového typu. Prvky dat jsou v poli ukládány do paměti v navazujících blocích za sebe a jsou identifikovány pomocí indexu. Pozici prvku v paměti počítače pak lze dopočítat pomocí jednoduché rovnice: <br />
adresa prvku v paměti = adresa počátku pole + index * velikost prvku<br />
<br />
Pole mohou mít libovolný počet rozměrů. Nejjednodušším typem jsou jednorozměrná neboli lineární pole. Dvourozměrná pole někdy nazýváme tabulka. Přístup k prvkům vícerozměrného pole se řeší použitím více indexů podobně jako při práci s maticemi. <br />
<br />
*statická pole - jsou pole s pevně daným počtem prvků<br />
*dynamická pole - jsou pole s proměnlivým počtem prvků<br />
<br />
==Fronta (Queue)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu FIFO (First-In-First-Out). Prvek uložený ve frontě jako první, je jako první na řadě pro výběr. Fronta aktivně pracuje pouze s prvním a posledním zařazeným prvkem. K tomuto účelu používá sadu tří základních operací: *Zařazení prvku (Equeue)<br />
*Vyřazení prvku (Dequeue)<br />
*Test prázdnoty (Empty)<br />
<br />
Speciálním případem front jsou prioritní fronty. V nich jsou prvky řazeny na základě priority. Zařazený prvek s vyšší prioritou předbíhá méně prioritní prvky. Z prioritní fronty je vybírán vždy prvek s nejvyšší prioritou.<br />
<br />
==Zásobník (Stack)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu LIFO (Last-In-First-Out). Na rozdíl od fronty se ze zásobníku prvky vybírají v opačném pořadí než v jakém byly vloženy. Zásobník tak aktivně pracuje pouze s posledním vloženým prvkem. Díky své rychlosti se zásobníky využívají především pro uchovávání výsledků mezivýpočtů a rekurzivních stavů. Základní sada operací zásobníku obsahuje instrukce:<br />
<br />
*Vložit (Push)<br />
*Vybrat (Pop)<br />
*Test prázdnoty (Empty)<br />
<br />
==Spojový seznam (Linked list)==<br />
Je datová struktura určená k ukládání dat předem neznámé délky. Spojové seznamy jsou tvořeny vzájemně propojenými uzly. Každý uzel obsahuje jeden datový prvek a jeden nebo více ukazatelů na další uzly. Na základě použitých ukazatelů rozlišujeme několik druhů spojových seznamů:<br />
<br />
===Jednosměrně zřetězený spojový seznam===<br />
Nejjednodušší varianta spojového seznamu. Jeho prvky obsahují pouze ukazatel na další prvek v seznamu. Jednosměrný spojový seznam lze prohledávat pouze jedním směrem od počátečního prvku struktury dál. Jednosměrné prohledávání je v mnoha případech neefektivní, proto vznikly další varianty spojových seznamů.<br />
<br />
===Obousměrně zřetězený spojový seznam===<br />
Uzly obousměrně zřetězeného seznamu obsahují dva ukazatele na následující a předchozí uzel. Díky zpětnému zřetězení se jde při prohledávání obousměrně zřetězeného seznamu i vracet.<br />
<br />
===Kruhový spojový seznam===<br />
Kruhový seznam je speciálním typem seznamu zřetězeným do kruhu. Poslední uzel seznamu obsahuje místo prázdného odkazu ukazatel na první prvek listu. Kruhový seznam lze vytvořit v obou variantách zřetězení. Obousměrné zřetězení umožňuje tento typ spojového seznamu procházet libovolně v obou směrech od počátku i od konce.<br />
<br />
=Pokročilé datové struktury=<br />
Mezi pokročilé datové struktury řadíme především stromy, hashe a nejrůznější grafové struktury. Konstrukčně složitější datové struktury mají význam především při efektivním třídění a vyhledávání dat.<br />
<br />
==Stromové struktury (Tree)==<br />
<br />
Slouží k uchovávání hierarchicky uspořádaných dat jako jsou abecední seznamy, organizační struktury, nebo hierarchie souborů. Ve stromových strukturách jsou data řazeny od tzv. kořene (root) pomocí větvení skrze vnitřní uzly (internal nodes) až k nejnižším prvkům struktury – listům (leaf).''<ref>Dictionary of Algorithms and Data Structures, Paul E. Black, NITS [online]. 1998 [2014-06-10]. Dostupné z: http://xlinux.nist.gov/dads//HTML/tree.html</ref> Stromy jsou efektivní především při prohledávání setříděných dat s logaritmickou složitostí. <br />
<br />
Z hlediska implementace existuje mnoho různých stromových struktur. Mezi nejznámější patří binární stromy, R-stromy, nebo AVL stromy. Vlastnostmi stromů se podrobně zabývá [[teorie grafů]]. <ref>Data Structures, Wikibooks [online]. 1998 [2014-06-10]. Dostupné z: http://en.wikibooks.org/wiki/Data_Structures/Trees</ref><br />
<br />
==Grafy (Graph)==<br />
<br />
Grafy jsou datové struktury složené z uzlů (nodes) a hran (edges) a jejich vzájemných incidencí. Uzly grafu uchovávají data. Hrany jsou spojnice uzlů označující vazby, nebo vztahy mezi nimi. Z hlediska vnitřní struktury rozlišujeme dva základní typy grafů:<br />
<br />
*Neorientovaný graf - hrany nerozlišují směr<br />
*Orientovaný graf - hrany mají určen směr od počátečního do koncového uzlu<br />
<br />
Problematikou grafů se v počítačové vědě podrobně zabývá [[teorie grafů]].<br />
<br />
==Hashe (Hash)==<br />
Hash je struktura používaná k sestavování asociativních polí, které za pomoci klíče (key) a správné hashovací funkce (hash function) umožňují indexování. Indexování je hojně používáno například v [[databáze|databázích]], kde urychluje vyhledávání.<br />
<br />
=== Zdroje ===<br />
<br />
==== Poznámky v textu ====<br />
<references /><br />
<br />
==== Seznam použité literatury ====<br />
*Dinesh P. Mehta, Sartaj Sahni. ''Handbook of Data Structures and Applications'', Chapman & Hall/CRC Computer and Information Science Series, 2004.<br />
<br />
* Alfred V. Aho, Jeffrey D. Ullman, John E. Hopcroft. ''Data Structures and Algorithms''. Addison Wesley, 1983.<br />
<br />
* Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. ''Introduction to Algorithms''. McGraw-Hill, 2001.<br />
<br />
* Kurt Mehlhorn, Peter Sanders. ''Algorithms and Data Structures''. Springer, 2008.<br />
<br />
*S.B. Kishor ''Data Structures, Edition 3''. Das Ganu Prakashan, Nagpur, 2008.</div>Václav Sahula (sahulav@angeluss.cz)https://wikisofia.cz/w/index.php?title=Datov%C3%A9_struktury&diff=4740Datové struktury2014-06-16T09:02:53Z<p>Václav Sahula (sahulav@angeluss.cz): /* Grafy (Graph) */</p>
<hr />
<div>Datové struktury jsou programové konstrukce sloužící k efektivní správě dat v počítačovém softwaru. Data jsou v počítači reprezentována různými [[datový typ|datovými typy]]. Ty lze dále skládat do struktur, které umožňují s daty snadněji a rychleji pracovat.<br />
<br />
Datové struktury patří mezi [[abstraktní datové typy|abstraktní datové typy (ADT)]]. Jde o programové abstrakce nezávislé na konkrétním způsobu implementace, programovacím jazyku, nebo typu ukládaných dat. Jednotlivé datové struktury definují jak svou vnitřní strukturu, tak i operace, které je možné nad daty provádět.<br />
<br />
V dnešní době známe desítky základních i pokročilých datových struktur. Každá je vhodná k plnění jiných funkcí. Existují obecné datové struktury používané v širokém spektru programů, ale i úzce specializované vhodné k použití ve velmi specifických případech. Pro datovou strukturu a její využití je rozhodující především jejich paměťová náročnost a škála základních operací s jejich [[asymptotická složitost|asymptotickou složitostí]].<br />
<br />
==Operace==<br />
<br />
Operace jsou úkony, které lze v rámci dané datové struktury nad daty provádět. Většina operací souvisí s efektivním ukládáním, vyhledáváním, řazením, tříděním nebo mazáním dat ve struktuře. Pro každou operaci lze vypočítat [[asymptotická složitost|asymptotickou složitost]] udávající rychlost s kterou se daná operace provede.<br />
<br />
=Základní datové struktury=<br />
==Pole (Array)==<br />
Pole si můžeme představit jako uspořádanou matici prvků určitého datového typu. Prvky dat jsou v poli ukládány do paměti v navazujících blocích za sebe a jsou identifikovány pomocí indexu. Pozici prvku v paměti počítače pak lze dopočítat pomocí jednoduché rovnice: <br />
adresa prvku v paměti = adresa počátku pole + index * velikost prvku<br />
<br />
Pole mohou mít libovolný počet rozměrů. Nejjednodušším typem jsou jednorozměrná neboli lineární pole. Dvourozměrná pole někdy nazýváme tabulka. Přístup k prvkům vícerozměrného pole se řeší použitím více indexů podobně jako při práci s maticemi. <br />
<br />
*statická pole - jsou pole s pevně daným počtem prvků<br />
*dynamická pole - jsou pole s proměnlivým počtem prvků<br />
<br />
==Fronta (Queue)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu FIFO (First-In-First-Out). Prvek uložený ve frontě jako první, je jako první na řadě pro výběr. Fronta aktivně pracuje pouze s prvním a posledním zařazeným prvkem. K tomuto účelu používá sadu tří základních operací: *Zařazení prvku (Equeue)<br />
*Vyřazení prvku (Dequeue)<br />
*Test prázdnoty (Empty)<br />
<br />
Speciálním případem front jsou prioritní fronty. V nich jsou prvky řazeny na základě priority. Zařazený prvek s vyšší prioritou předbíhá méně prioritní prvky. Z prioritní fronty je vybírán vždy prvek s nejvyšší prioritou.<br />
<br />
==Zásobník (Stack)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu LIFO (Last-In-First-Out). Na rozdíl od fronty se ze zásobníku prvky vybírají v opačném pořadí než v jakém byly vloženy. Zásobník tak aktivně pracuje pouze s posledním vloženým prvkem. Díky své rychlosti se zásobníky využívají především pro uchovávání výsledků mezivýpočtů a rekurzivních stavů. Základní sada operací zásobníku obsahuje instrukce:<br />
<br />
*Vložit (Push)<br />
*Vybrat (Pop)<br />
*Test prázdnoty (Empty)<br />
<br />
==Spojový seznam (Linked list)==<br />
Je datová struktura určená k ukládání dat předem neznámé délky. Spojové seznamy jsou tvořeny vzájemně propojenými uzly. Každý uzel obsahuje jeden datový prvek a jeden nebo více ukazatelů na další uzly. Na základě použitých ukazatelů rozlišujeme několik druhů spojových seznamů:<br />
<br />
===Jednosměrně zřetězený spojový seznam===<br />
Nejjednodušší varianta spojového seznamu. Jeho prvky obsahují pouze ukazatel na další prvek v seznamu. Jednosměrný spojový seznam lze prohledávat pouze jedním směrem od počátečního prvku struktury dál. Jednosměrné prohledávání je v mnoha případech neefektivní, proto vznikly další varianty spojových seznamů.<br />
<br />
===Obousměrně zřetězený spojový seznam===<br />
Uzly obousměrně zřetězeného seznamu obsahují dva ukazatele na následující a předchozí uzel. Díky zpětnému zřetězení se jde při prohledávání obousměrně zřetězeného seznamu i vracet.<br />
<br />
===Kruhový spojový seznam===<br />
Kruhový seznam je speciálním typem seznamu zřetězeným do kruhu. Poslední uzel seznamu obsahuje místo prázdného odkazu ukazatel na první prvek listu. Kruhový seznam lze vytvořit v obou variantách zřetězení. Obousměrné zřetězení umožňuje tento typ spojového seznamu procházet libovolně v obou směrech od počátku i od konce.<br />
<br />
=Pokročilé datové struktury=<br />
Mezi pokročilé datové struktury řadíme především stromy, hashe a nejrůznější grafové struktury. Konstrukčně složitější datové struktury mají význam především při efektivním třídění a vyhledávání dat.<br />
<br />
==Stromové struktury (Tree)==<br />
<br />
Slouží k uchovávání hierarchicky uspořádaných dat jako jsou abecední seznamy, organizační struktury, nebo hierarchie souborů. Ve stromových strukturách jsou data řazeny od tzv. kořene (root) pomocí větvení skrze vnitřní uzly (internal nodes) až k nejnižším prvkům struktury – listům (leaf).''<ref>Dictionary of Algorithms and Data Structures, Paul E. Black, NITS [online]. 1998 [cit. 2014-06-10]. Dostupné z: http://xlinux.nist.gov/dads//HTML/tree.html</ref> Stromy jsou efektivní především při prohledávání setříděných dat s logaritmickou složitostí. <br />
<br />
Z hlediska implementace existuje mnoho různých stromových struktur. Mezi nejznámější patří binární stromy, R-stromy, nebo AVL stromy. Vlastnostmi stromů se podrobně zabývá [[teorie grafů]]. <ref>Data Structures, Wikibooks [online]. 1998 [cit. 2014-06-10]. Dostupné z: http://en.wikibooks.org/wiki/Data_Structures/Trees</ref><br />
<br />
==Grafy (Graph)==<br />
<br />
Grafy jsou datové struktury složené z uzlů (nodes) a hran (edges) a jejich vzájemných incidencí. Uzly grafu uchovávají data. Hrany jsou spojnice uzlů označující vazby, nebo vztahy mezi nimi. Z hlediska vnitřní struktury rozlišujeme dva základní typy grafů:<br />
<br />
*Neorientovaný graf - hrany nerozlišují směr<br />
*Orientovaný graf - hrany mají určen směr od počátečního do koncového uzlu<br />
<br />
Problematikou grafů se v počítačové vědě podrobně zabývá [[teorie grafů]].<br />
<br />
==Hashe (Hash)==<br />
Hash je struktura používaná k sestavování asociativních polí, které za pomoci klíče (key) a správné hashovací funkce (hash function) umožňují indexování. Indexování je hojně používáno například v [[databáze|databázích]], kde urychluje vyhledávání.<br />
<br />
=== Zdroje ===<br />
<br />
==== Poznámky v textu ====<br />
<references /><br />
<br />
==== Seznam použité literatury ====<br />
*Dinesh P. Mehta, Sartaj Sahni. ''Handbook of Data Structures and Applications'', Chapman & Hall/CRC Computer and Information Science Series, 2004.<br />
<br />
* Alfred V. Aho, Jeffrey D. Ullman, John E. Hopcroft. ''Data Structures and Algorithms''. Addison Wesley, 1983.<br />
<br />
* Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. ''Introduction to Algorithms''. McGraw-Hill, 2001.<br />
<br />
* Kurt Mehlhorn, Peter Sanders. ''Algorithms and Data Structures''. Springer, 2008.<br />
<br />
*S.B. Kishor ''Data Structures, Edition 3''. Das Ganu Prakashan, Nagpur, 2008.</div>Václav Sahula (sahulav@angeluss.cz)https://wikisofia.cz/w/index.php?title=Datov%C3%A9_struktury&diff=4713Datové struktury2014-06-15T20:25:30Z<p>Václav Sahula (sahulav@angeluss.cz): </p>
<hr />
<div>Datové struktury jsou programové konstrukce sloužící k efektivní správě dat v počítačovém softwaru. Data jsou v počítači reprezentována různými [[datový typ|datovými typy]]. Ty lze dále skládat do struktur, které umožňují s daty snadněji a rychleji pracovat.<br />
<br />
Datové struktury patří mezi [[abstraktní datové typy|abstraktní datové typy (ADT)]]. Jde o programové abstrakce nezávislé na konkrétním způsobu implementace, programovacím jazyku, nebo typu ukládaných dat. Jednotlivé datové struktury definují jak svou vnitřní strukturu, tak i operace, které je možné nad daty provádět.<br />
<br />
V dnešní době známe desítky základních i pokročilých datových struktur. Každá je vhodná k plnění jiných funkcí. Existují obecné datové struktury používané v širokém spektru programů, ale i úzce specializované vhodné k použití ve velmi specifických případech. Pro datovou strukturu a její využití je rozhodující především jejich paměťová náročnost a škála základních operací s jejich [[asymptotická složitost|asymptotickou složitostí]].<br />
<br />
==Operace==<br />
<br />
Operace jsou úkony, které lze v rámci dané datové struktury nad daty provádět. Většina operací souvisí s efektivním ukládáním, vyhledáváním, řazením, tříděním nebo mazáním dat ve struktuře. Pro každou operaci lze vypočítat [[asymptotická složitost|asymptotickou složitost]] udávající rychlost s kterou se daná operace provede.<br />
<br />
=Základní datové struktury=<br />
==Pole (Array)==<br />
Pole si můžeme představit jako uspořádanou matici prvků určitého datového typu. Prvky dat jsou v poli ukládány do paměti v navazujících blocích za sebe a jsou identifikovány pomocí indexu. Pozici prvku v paměti počítače pak lze dopočítat pomocí jednoduché rovnice: <br />
adresa prvku v paměti = adresa počátku pole + index * velikost prvku<br />
<br />
Pole mohou mít libovolný počet rozměrů. Nejjednodušším typem jsou jednorozměrná neboli lineární pole. Dvourozměrná pole někdy nazýváme tabulka. Přístup k prvkům vícerozměrného pole se řeší použitím více indexů podobně jako při práci s maticemi. <br />
<br />
*statická pole - jsou pole s pevně daným počtem prvků<br />
*dynamická pole - jsou pole s proměnlivým počtem prvků<br />
<br />
==Fronta (Queue)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu FIFO (First-In-First-Out). Prvek uložený ve frontě jako první, je jako první na řadě pro výběr. Fronta aktivně pracuje pouze s prvním a posledním zařazeným prvkem. K tomuto účelu používá sadu tří základních operací: *Zařazení prvku (Equeue)<br />
*Vyřazení prvku (Dequeue)<br />
*Test prázdnoty (Empty)<br />
<br />
Speciálním případem front jsou prioritní fronty. V nich jsou prvky řazeny na základě priority. Zařazený prvek s vyšší prioritou předbíhá méně prioritní prvky. Z prioritní fronty je vybírán vždy prvek s nejvyšší prioritou.<br />
<br />
==Zásobník (Stack)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu LIFO (Last-In-First-Out). Na rozdíl od fronty se ze zásobníku prvky vybírají v opačném pořadí než v jakém byly vloženy. Zásobník tak aktivně pracuje pouze s posledním vloženým prvkem. Díky své rychlosti se zásobníky využívají především pro uchovávání výsledků mezivýpočtů a rekurzivních stavů. Základní sada operací zásobníku obsahuje instrukce:<br />
<br />
*Vložit (Push)<br />
*Vybrat (Pop)<br />
*Test prázdnoty (Empty)<br />
<br />
==Spojový seznam (Linked list)==<br />
Je datová struktura určená k ukládání dat předem neznámé délky. Spojové seznamy jsou tvořeny vzájemně propojenými uzly. Každý uzel obsahuje jeden datový prvek a jeden nebo více ukazatelů na další uzly. Na základě použitých ukazatelů rozlišujeme několik druhů spojových seznamů:<br />
<br />
===Jednosměrně zřetězený spojový seznam===<br />
Nejjednodušší varianta spojového seznamu. Jeho prvky obsahují pouze ukazatel na další prvek v seznamu. Jednosměrný spojový seznam lze prohledávat pouze jedním směrem od počátečního prvku struktury dál. Jednosměrné prohledávání je v mnoha případech neefektivní, proto vznikly další varianty spojových seznamů.<br />
<br />
===Obousměrně zřetězený spojový seznam===<br />
Uzly obousměrně zřetězeného seznamu obsahují dva ukazatele na následující a předchozí uzel. Díky zpětnému zřetězení se jde při prohledávání obousměrně zřetězeného seznamu i vracet.<br />
<br />
===Kruhový spojový seznam===<br />
Kruhový seznam je speciálním typem seznamu zřetězeným do kruhu. Poslední uzel seznamu obsahuje místo prázdného odkazu ukazatel na první prvek listu. Kruhový seznam lze vytvořit v obou variantách zřetězení. Obousměrné zřetězení umožňuje tento typ spojového seznamu procházet libovolně v obou směrech od počátku i od konce.<br />
<br />
=Pokročilé datové struktury=<br />
Mezi pokročilé datové struktury řadíme především stromy, hashe a nejrůznější grafové struktury. Konstrukčně složitější datové struktury mají význam především při efektivním třídění a vyhledávání dat.<br />
<br />
==Stromové struktury (Tree)==<br />
<br />
Slouží k uchovávání hierarchicky uspořádaných dat jako jsou abecední seznamy, organizační struktury, nebo hierarchie souborů. Ve stromových strukturách jsou data řazeny od tzv. kořene (root) pomocí větvení skrze vnitřní uzly (internal nodes) až k nejnižším prvkům struktury – listům (leaf).''<ref>Dictionary of Algorithms and Data Structures, Paul E. Black, NITS [online]. 1998 [cit. 2014-06-10]. Dostupné z: http://xlinux.nist.gov/dads//HTML/tree.html</ref> Stromy jsou efektivní především při prohledávání setříděných dat s logaritmickou složitostí. <br />
<br />
Z hlediska implementace existuje mnoho různých stromových struktur. Mezi nejznámější patří binární stromy, R-stromy, nebo AVL stromy. Vlastnostmi stromů se podrobně zabývá [[teorie grafů]]. <ref>Data Structures, Wikibooks [online]. 1998 [cit. 2014-06-10]. Dostupné z: http://en.wikibooks.org/wiki/Data_Structures/Trees</ref><br />
<br />
==Grafy (Graph)==<br />
<br />
Grafy jsou datové struktury složené z uzlů (nodes) a hran (edges) a jejich vzájemných incidencí. Uzly grafu uchovávají data. Hrany jsou spojnice uzlů označující vazby, nebo vztahy mezi nimi. Z hlediska vnitřní struktury rozlišujeme dva základní typy grafů:<br />
<br />
*Neorientovaný graf - hrany nerozlišují směr<br />
*Orientovaný graf - hrany mají určen směr od počátečního do koncového uzlu<br />
<br />
Problematikou grafů se v počítačové vědě podrobně zabývá teorie grafů.<br />
<br />
==Hashe (Hash)==<br />
Hash je struktura používaná k sestavování asociativních polí, které za pomoci klíče (key) a správné hashovací funkce (hash function) umožňují indexování. Indexování je hojně používáno například v [[databáze|databázích]], kde urychluje vyhledávání.<br />
<br />
=== Zdroje ===<br />
<br />
==== Poznámky v textu ====<br />
<references /><br />
<br />
==== Seznam použité literatury ====<br />
*Dinesh P. Mehta, Sartaj Sahni. ''Handbook of Data Structures and Applications'', Chapman & Hall/CRC Computer and Information Science Series, 2004.<br />
<br />
* Alfred V. Aho, Jeffrey D. Ullman, John E. Hopcroft. ''Data Structures and Algorithms''. Addison Wesley, 1983.<br />
<br />
* Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. ''Introduction to Algorithms''. McGraw-Hill, 2001.<br />
<br />
* Kurt Mehlhorn, Peter Sanders. ''Algorithms and Data Structures''. Springer, 2008.<br />
<br />
*S.B. Kishor ''Data Structures, Edition 3''. Das Ganu Prakashan, Nagpur, 2008.</div>Václav Sahula (sahulav@angeluss.cz)https://wikisofia.cz/w/index.php?title=Datov%C3%A9_struktury&diff=4212Datové struktury2014-06-07T21:06:23Z<p>Václav Sahula (sahulav@angeluss.cz): </p>
<hr />
<div>Datové struktury jsou programové konstrukce sloužící k efektivní správě dat v počítačovém softwaru. Data jsou v počítači reprezentována různými [[datový typ|datovými typy]]. Ty lze dále skládat do struktur, které umožňují s daty snadněji a rychleji pracovat.<br />
<br />
Datové struktury patří mezi [[abstraktní datové typy|abstraktní datové typy (ADT)]]. Jde o programové abstrakce nezávislé na konkrétním způsobu implementace, programovacím jazyku, nebo typu ukládaných dat. Jednotlivé datové struktury definují jak svou vnitřní strukturu, tak i operace, které je možné nad daty provádět.<br />
<br />
V dnešní době známe desítky základních i pokročilých datových struktur. Každá je vhodná k plnění jiných funkcí. Existují obecné datové struktury používané v širokém spektru programů, ale i úzce specializované vhodné k použití ve velmi specifických případech. Pro datovou strukturu a její využití je rozhodující především jejich paměťová náročnost a škála základních operací s jejich [[asymptotická složitost|asymptotickou složitostí]].<br />
<br />
==Operace==<br />
<br />
Operace jsou úkony, které lze v rámci dané datové struktury nad daty provádět. Většina operací souvisí s efektivním ukládáním, vyhledáváním, řazením, tříděním nebo mazáním dat ve struktuře. Pro každou operaci lze vypočítat [[asymptotická složitost|asymptotickou složitost]] udávající rychlost s kterou se daná operace provede.<br />
<br />
=Základní datové struktury=<br />
==Pole (Array)==<br />
Pole si můžeme představit jako uspořádanou matici prvků určitého datového typu. Prvky dat jsou v poli ukládány do paměti v navazujících blocích za sebe a jsou identifikovány pomocí indexu. Pozici prvku v paměti počítače pak lze dopočítat pomocí jednoduché rovnice: <br />
adresa prvku v paměti = adresa počátku pole + index * velikost prvku<br />
<br />
Pole mohou mít libovolný počet rozměrů. Nejjednodušším typem jsou jednorozměrná neboli lineární pole. Dvourozměrná pole někdy nazýváme tabulka. Přístup k prvkům vícerozměrného pole se řeší použitím více indexů podobně jako při práci s maticemi. <br />
<br />
*statická pole - jsou pole s pevně daným počtem prvků<br />
*dynamická pole - jsou pole s proměnlivým počtem prvků<br />
<br />
==Fronta (Queue)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu FIFO (First-In-First-Out). Prvek uložený ve frontě jako první, je jako první na řadě pro výběr. Fronta aktivně pracuje pouze s prvním a posledním zařazeným prvkem. K tomuto účelu používá sadu tří základních operací: *Zařazení prvku (Equeue)<br />
*Vyřazení prvku (Dequeue)<br />
*Test prázdnoty (Empty)<br />
<br />
Speciálním případem front jsou prioritní fronty. V nich jsou prvky řazeny na základě priority. Zařazený prvek s vyšší prioritou předbíhá méně prioritní prvky. Z prioritní fronty je vybírán vždy prvek s nejvyšší prioritou.<br />
<br />
==Zásobník (Stack)==<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu LIFO (Last-In-First-Out). Na rozdíl od fronty se ze zásobníku prvky vybírají v opačném pořadí než v jakém byly vloženy. Zásobník tak aktivně pracuje pouze s posledním vloženým prvkem. Díky své rychlosti se zásobníky využívají především pro uchovávání výsledků mezivýpočtů a rekurzivních stavů. Základní sada operací zásobníku obsahuje instrukce:<br />
<br />
*Vložit (Push)<br />
*Vybrat (Pop)<br />
*Test prázdnoty (Empty)<br />
<br />
==Spojový seznam (Linked list)==<br />
Je datová struktura určená k ukládání dat předem neznámé délky. Spojové seznamy jsou tvořeny vzájemně propojenými uzly. Každý uzel obsahuje jeden datový prvek a jeden nebo více ukazatelů na další uzly. Na základě použitých ukazatelů rozlišujeme několik druhů spojových seznamů:<br />
<br />
===Jednosměrně zřetězený spojový seznam===<br />
Nejjednodušší varianta spojového seznamu. Jeho prvky obsahují pouze ukazatel na další prvek v seznamu. Jednosměrný spojový seznam lze prohledávat pouze jedním směrem od počátečního prvku struktury dál. Jednosměrné prohledávání je v mnoha případech neefektivní, proto vznikly další varianty spojových seznamů.<br />
<br />
===Obousměrně zřetězený spojový seznam===<br />
Uzly obousměrně zřetězeného seznamu obsahují dva ukazatele na následující a předchozí uzel. Díky zpětnému zřetězení se jde při prohledávání obousměrně zřetězeného seznamu i vracet.<br />
<br />
===Kruhový spojový seznam===<br />
Kruhový seznam je speciálním typem seznamu zřetězeným do kruhu. Poslední uzel seznamu obsahuje místo prázdného odkazu ukazatel na první prvek listu. Kruhový seznam lze vytvořit v obou variantách zřetězení. Obousměrné zřetězení umožňuje tento typ spojového seznamu procházet libovolně v obou směrech od počátku i od konce.<br />
<br />
=Pokročilé datové struktury=<br />
Mezi pokročilé datové struktury řadíme především stromy, hashe a nejrůznější grafové struktury. Konstrukčně složitější datové struktury mají význam především při efektivním třídění a vyhledávání dat.<br />
<br />
==Stromové struktury (Tree)==<br />
<br />
Slouží k uchovávání hierarchicky uspořádaných dat jako jsou abecední seznamy, organizační struktury, nebo hierarchie souborů. Ve stromových strukturách jsou data řazeny od tzv. kořene (root) pomocí větvení až k nejnižším prvkům struktury – listům (leaf). Stromy jsou efektivní především při prohledávání setříděných dat s logaritmickou složitostí. <br />
<br />
Z hlediska implementace existuje mnoho různých stromových struktur. Mezi nejznámější patří binární stromy, R-stromy, nebo AVL stromy. Vlastnostmi stromů se podrobně zabývá [[teorie grafů]].<br />
<br />
==Grafy (Graph)==<br />
<br />
Grafy jsou datové struktury složené z uzlů (nodes) a hran (edges) a jejich vzájemných incidencí. Uzly grafu uchovávají data. Hrany jsou spojnice uzlů označující vazby, nebo vztahy mezi nimi. Z hlediska vnitřní struktury rozlišujeme dva základní typy grafů:<br />
<br />
*Neorientovaný graf - hrany nerozlišují směr<br />
*Orientovaný graf - hrany mají určen směr od počátečního do koncového uzlu<br />
<br />
Problematikou grafů se v počítačové vědě podrobně zabývá teorie grafů.<br />
<br />
==Hashe (Hash)==<br />
Hash je struktura používaná k sestavování asociativních polí, které za pomoci klíče (key) a správné hashovací funkce (hash function) umožňují indexování. Indexování je hojně používáno například v [[databáze|databázích]], kde urychluje vyhledávání.</div>Václav Sahula (sahulav@angeluss.cz)https://wikisofia.cz/w/index.php?title=Datov%C3%A9_struktury&diff=4211Datové struktury2014-06-07T21:04:41Z<p>Václav Sahula (sahulav@angeluss.cz): Založena nová stránka: =Datové struktury= Datové struktury jsou programové konstrukce sloužící k efektivní správě dat v počítačovém softwaru. Data jsou v počítači reprezentová…</p>
<hr />
<div>=Datové struktury=<br />
Datové struktury jsou programové konstrukce sloužící k efektivní správě dat v počítačovém softwaru. Data jsou v počítači reprezentována různými [[datový typ|datovými typy]]. Ty lze dále skládat do struktur, které umožňují s daty snadněji a rychleji pracovat.<br />
<br />
Datové struktury patří mezi [[abstraktní datové typy|abstraktní datové typy (ADT)]]. Jde o programové abstrakce nezávislé na konkrétním způsobu implementace, programovacím jazyku, nebo typu ukládaných dat. Jednotlivé datové struktury definují jak svou vnitřní strukturu, tak i operace, které je možné nad daty provádět.<br />
<br />
V dnešní době známe desítky základních i pokročilých datových struktur. Každá je vhodná k plnění jiných funkcí. Existují obecné datové struktury používané v širokém spektru programů, ale i úzce specializované vhodné k použití ve velmi specifických případech. Pro datovou strukturu a její využití je rozhodující především jejich paměťová náročnost a škála základních operací s jejich [[asymptotická složitost|asymptotickou složitostí]].<br />
<br />
===Operace===<br />
<br />
Operace jsou úkony, které lze v rámci dané datové struktury nad daty provádět. Většina operací souvisí s efektivním ukládáním, vyhledáváním, řazením, tříděním nebo mazáním dat ve struktuře. Pro každou operaci lze vypočítat [[asymptotická složitost|asymptotickou složitost]] udávající rychlost s kterou se daná operace provede.<br />
<br />
==Základní datové struktury==<br />
===Pole (Array)===<br />
Pole si můžeme představit jako uspořádanou matici prvků určitého datového typu. Prvky dat jsou v poli ukládány do paměti v navazujících blocích za sebe a jsou identifikovány pomocí indexu. Pozici prvku v paměti počítače pak lze dopočítat pomocí jednoduché rovnice: <br />
adresa prvku v paměti = adresa počátku pole + index * velikost prvku<br />
<br />
Pole mohou mít libovolný počet rozměrů. Nejjednodušším typem jsou jednorozměrná neboli lineární pole. Dvourozměrná pole někdy nazýváme tabulka. Přístup k prvkům vícerozměrného pole se řeší použitím více indexů podobně jako při práci s maticemi. <br />
<br />
*statická pole - jsou pole s pevně daným počtem prvků<br />
*dynamická pole - jsou pole s proměnlivým počtem prvků<br />
<br />
===Fronta (Queue)===<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu FIFO (First-In-First-Out). Prvek uložený ve frontě jako první, je jako první na řadě pro výběr. Fronta aktivně pracuje pouze s prvním a posledním zařazeným prvkem. K tomuto účelu používá sadu tří základních operací: *Zařazení prvku (Equeue)<br />
*Vyřazení prvku (Dequeue)<br />
*Test prázdnoty (Empty)<br />
<br />
Speciálním případem front jsou prioritní fronty. V nich jsou prvky řazeny na základě priority. Zařazený prvek s vyšší prioritou předbíhá méně prioritní prvky. Z prioritní fronty je vybírán vždy prvek s nejvyšší prioritou.<br />
<br />
===Zásobník (Stack)===<br />
Jednoduchá datová struktura s proměnným počtem zařazených prvků fungující na principu LIFO (Last-In-First-Out). Na rozdíl od fronty se ze zásobníku prvky vybírají v opačném pořadí než v jakém byly vloženy. Zásobník tak aktivně pracuje pouze s posledním vloženým prvkem. Díky své rychlosti se zásobníky využívají především pro uchovávání výsledků mezivýpočtů a rekurzivních stavů. Základní sada operací zásobníku obsahuje instrukce:<br />
<br />
*Vložit (Push)<br />
*Vybrat (Pop)<br />
*Test prázdnoty (Empty)<br />
<br />
===Spojový seznam (Linked list)===<br />
Je datová struktura určená k ukládání dat předem neznámé délky. Spojové seznamy jsou tvořeny vzájemně propojenými uzly. Každý uzel obsahuje jeden datový prvek a jeden nebo více ukazatelů na další uzly. Na základě použitých ukazatelů rozlišujeme několik druhů spojových seznamů:<br />
<br />
====Jednosměrně zřetězený spojový seznam====<br />
Nejjednodušší varianta spojového seznamu. Jeho prvky obsahují pouze ukazatel na další prvek v seznamu. Jednosměrný spojový seznam lze prohledávat pouze jedním směrem od počátečního prvku struktury dál. Jednosměrné prohledávání je v mnoha případech neefektivní, proto vznikly další varianty spojových seznamů.<br />
<br />
====Obousměrně zřetězený spojový seznam====<br />
Uzly obousměrně zřetězeného seznamu obsahují dva ukazatele na následující a předchozí uzel. Díky zpětnému zřetězení se jde při prohledávání obousměrně zřetězeného seznamu i vracet.<br />
<br />
====Kruhový spojový seznam====<br />
Kruhový seznam je speciálním typem seznamu zřetězeným do kruhu. Poslední uzel seznamu obsahuje místo prázdného odkazu ukazatel na první prvek listu. Kruhový seznam lze vytvořit v obou variantách zřetězení. Obousměrné zřetězení umožňuje tento typ spojového seznamu procházet libovolně v obou směrech od počátku i od konce.<br />
<br />
==Pokročilé datové struktury==<br />
Mezi pokročilé datové struktury řadíme především stromy, hashe a nejrůznější grafové struktury. Konstrukčně složitější datové struktury mají význam především při efektivním třídění a vyhledávání dat.<br />
<br />
===Stromové struktury (Tree)===<br />
<br />
Slouží k uchovávání hierarchicky uspořádaných dat jako jsou abecední seznamy, organizační struktury, nebo hierarchie souborů. Ve stromových strukturách jsou data řazeny od tzv. kořene (root) pomocí větvení až k nejnižším prvkům struktury – listům (leaf). Stromy jsou efektivní především při prohledávání setříděných dat s logaritmickou složitostí. <br />
<br />
Z hlediska implementace existuje mnoho různých stromových struktur. Mezi nejznámější patří binární stromy, R-stromy, nebo AVL stromy. Vlastnostmi stromů se podrobně zabývá [[teorie grafů]].<br />
<br />
===Grafy (Graph)===<br />
<br />
Grafy jsou datové struktury složené z uzlů (nodes) a hran (edges) a jejich vzájemných incidencí. Uzly grafu uchovávají data. Hrany jsou spojnice uzlů označující vazby, nebo vztahy mezi nimi. Z hlediska vnitřní struktury rozlišujeme dva základní typy grafů:<br />
<br />
*Neorientovaný graf - hrany nerozlišují směr<br />
*Orientovaný graf - hrany mají určen směr od počátečního do koncového uzlu<br />
<br />
Problematikou grafů se v počítačové vědě podrobně zabývá teorie grafů.<br />
<br />
===Hashe (Hash)===<br />
Hash je struktura používaná k sestavování asociativních polí, které za pomoci klíče (key) a správné hashovací funkce (hash function) umožňují indexování. Indexování je hojně používáno například v [[databáze|databázích]], kde urychluje vyhledávání.</div>Václav Sahula (sahulav@angeluss.cz)https://wikisofia.cz/w/index.php?title=P%C5%99%C3%ADstupy_k_modelov%C3%A1n%C3%AD_lidsk%C3%A9_mysli_v_kognitivn%C3%ADch_v%C4%9Bd%C3%A1ch/old&diff=4210Přístupy k modelování lidské mysli v kognitivních vědách/old2014-06-07T18:16:14Z<p>Václav Sahula (sahulav@angeluss.cz): </p>
<hr />
<div>Přístupy k modelování lidské mysli v kognitivních vědách<br />
- Jaké znáte základní teoretické přístupy ke studiu lidské mysli?<br />
- V čem spočívá komputačně-reprezentační uchopení mysli (CRUM)?<br />
- V čem spočívá a jak lze využít konekcionistický přístup?<br />
'''Hlavní cíl kognitivné vědy je pochopit myšlenkové pochody.'''<br />
Znalosti v mysli mají formu MENTÁLNÍCH REPREZENTACÍCH - v hlavách lidí probíhaj mentální PROCESY, které manipulují s mentálními reprezentacemi. Výsledkem zpracování jsou myšlenky a činy.<br />
Různé typy mentálních reprezentací (např. pravidla nebo pojmy) pracují s různými procesy.<br />
<br />
Základní přístupy:<br />
<br />
KONEKCIONISTICKÉ REPREZENTACE<br />
REPREZENTACE NEUTRÁLNÍCH SÍTÍ<br />
<br />
Psychologické pokusy – klíčovou podmínkou pro to, abychom mohli kognitivní vědy považovat za vědu.<br />
<br />
METODY<br />
<br />
Testování probíhá na počítačích – tyto PC modely slouží jako analogie k mentálním operacím.<br />
<br />
KOMPUTAČNĚ REPREZENTAČNÍ UCHOPENÍ MYSLI<br />
<br />
Hlavní hypotéza kognitivní vědy – Myšlení lze nejlépe pochopit v pojmosloví reprezentujících struktur v mysli, a v pojmosloví výpočetních procedur, které na těchto strukturách operují.<br />
= CRUM (Computional – Representational Understanding of Mind)<br />
- srovnání mysli s počítačem (stejné pojmosloví)<br />
<br />
'''Teorie CRUM předpokládá, že v mysli existují mentální reprezentace analogické datovým strukturám (souborům) a výpočetní procedury podobné algoritmům.<br />
'''<br />
<br />
<br />
PROGRAM <br />
[[Datové struktury]]<br />
Algoritmy<br />
= běh programu<br />
<br />
MYSL<br />
Mentální reprezentace<br />
Výpočetní procedury<br />
= myšlení<br />
<br />
<br />
<br />
<br />
<br />
'''Teorie, modely a programy'''<br />
<br />
Kognitivní teorie předpokládá existenci souboru reprezentačních struktur a soubor procedur, které s nimi zacházejí. Výpočetní model tyto struktury a procesy zpřesní tím, že je bude interpretovat jako analogii s PC programy. Aby se model dat testovat, musí být implementovaný do softwarových programů běžících na různých platformách.<br />
<br />
'''Vyhodnocení různých přístupů k mentálním reprezentacím'''<br />
<br />
6 různých přístupů k mentálním reprezentacím – logika, pravidla, pojmy, představy, analogie a sítě.<br />
<br />
<br />
<br />
[[Kritéria pro hodnocení]]<br />
<br />
1. Reprezentační mohutnost – kolik informace může vytěžit.<br />
2. Výpočetní mohutnost – výkonost<br />
a) řešení problémů – plánování, rozhodování, vysvětlení<br />
b) učení<br />
c) jazyk<br />
3. Psychologická přijatelnost<br />
4. Neurologická přijatelnost<br />
5. Praktické použitelnost<br />
a) výuka<br />
b) navrhování<br />
c) inteligentní systémy<br />
<br />
<br />
<br />
'''LOGIKA<br />
'''<br />
<br />
(Aristoteles, Church, Turing)<br />
SYLOGISMY:<br />
- Schémata obsahující premisi a závěr<br />
- Jsou formou deduktivního odvozoování – závěry nutně plynou z premis<br />
- Induktvní vyvozování – vnáší prvek nejistoty<br />
<br />
Formální logika je výkonným nástrojem pro výzkum reprezentací i výpočtů.<br />
Proporční a predikátový kalkul umožňují vyjádřit mnohé složité druhy znalostí a mnohé sondy se dají pochopit v pojmech logických dedukcí s odvozovacími pravidly typu modus ponens<br />
<br />
= pro kognitivní vědu se příliš nehodí, ale díky ní se lze lepšímu usuzování.<br />
<br />
<br />
<br />
<br />
'''PRAVIDLA'''<br />
<br />
(Newell, Shaw, Simon)<br />
- jsou struktury typu jestliže – pak<br />
- Logic Theorist, GPS (general promblem solving)<br />
+ prakticky využitelné při tvorbě výukových programů<br />
Většinu lidského myšlení lze popsat terminologií pravidel a mnoho druhů myšlení ( např. plánování ) lze modelovat pomocí systémů založených na pravidlech.<br />
<br />
V logice se u pravidla nebo kondicionálu část JESTLIŽE (ANTECEDENT) a část PAK (konsekvent). V umělé inteligenci se pravidlům často říká produkce (Productions)<br />
<br />
<br />
<br />
<br />
<br />
'''POJMY – KONCEPTY'''<br />
<br />
(Barlett, Kant, Minsky)<br />
- 70.léta PC podstata konceptů – rámec (frame), schéma (schema) nebo scénář (script).<br />
+ využitelné pro plánování<br />
Každý koncept nemusí být přesně definován, ale spíše by měly být nahlíženy jako soubory typických vlastností. Použití konceptů pak spočívá v získání přibližné shody mezi pojmy a světem.<br />
Systémy hierarchisticky uspořádaných pojmů se někdy nazývají sémanitickými sítěmi.<br />
Odvozování pomocí dědění se používá v objektovém orientování (object-oriented programming).<br />
<br />
<br />
<br />
<br />
<br />
<br />
'''ANALOGIE'''<br />
<br />
(Mill, Hesse, Evans)<br />
<br />
2 situace:<br />
<br />
Cílový analog – představuje novou situaci o níž se uvažuje<br />
Zdrojový analog – reprezentují původní situaci, jež má být adaptována a aplikována na cílový analog.<br />
<br />
+ velký přínos pro vysvětlování<br />
<br />
Uplatňuje se v různých oblastech – řešení problémů, rozhodování, vysvětlení a jazyková komunikace.<br />
Výpočetní modely simulují způsoby, jak lidé vyhledávají a mapují zdrojové analogy, aby je pak použili na cílové situace.<br />
Omezení ve formě podobnosti, sktruktury nebo účelu pomáhají překonat obtížný problém s vyhledáváním předchozích zkušeností a jejich použití v nových situacích. Ne všechno myšlení se odehrává v analogiích a nevhodné analogie mohou myšlení omezovat. Navzdory tomu se mohou analogie stát velmi výkonnými nástroji ve výchovném procesu.<br />
<br />
<br />
<br />
<br />
<br />
'''PŘEDSTAVY'''<br />
<br />
(Wundt, Paino, Shepard, Metzler)<br />
<br />
- Nejtypičtější jsou vizuální představy.<br />
+ napomáhá při učení, u PC poměrně vzácné.<br />
<br />
Obrazové reprezentace zachytí vizuální a prostorovou informaci ve formě mnohem použitelnější než dlouhodobé slovní popisy.<br />
Výpočetními procesy vhodnými pro vizuální reprezentaci jsou prohlížení, vyhledávání, zvětšování, rotace nebo transformace.<br />
<br />
<br />
<br />
<br />
'''KONEKCIONISTICKÉ SÍTĚ'''<br />
<br />
<br />
- konekcionistický výzkum – počítačové modelování, které se inspirovalo uspořádáním neuronů v mozku.<br />
- Zdůrazňuje důležitost vzájemných propojení (konexí) mezi jednotlivými strukturami připomínající neurony (označení neurální sítě nebo paralelní distribuované zpracování.)<br />
<br />
Konekcionistické modely mozku a mysli:<br />
<br />
A) Lokální reprezentace – struktury podobné neuronům zde lze označit jako zástupce interpretace pojmů nebo tvrzení.<br />
B) Distribuované reprezentace – reprezentaci pojmů nebo výroků se učí celá síť a jejich význam je distribuován přes velké soubory struktur podobných neuronům.<br />
<br />
Lokální i distribuované sítě reprezentace jsou schopny paralelního respektování omezení (Parallel constraint satisfaction, PCS) (př. Rozvrh ve škole).<br />
<br />
Př. Neckertova krychle<br />
<br />
Jak fungují PCS<br />
- prvky jsou reprezentovány jednotkami. Pozitivní vnitřní vztahy jsou reprezentované budivými (excitačními) spoji. Negativní vnitřní vztahy reprezentují inhibiční propojení. Síť může reagovat i na vnější působení. Řídící jednotka ovlivňuje připojené jednotky buď pozitivně nebo negativně.<br />
<br />
Konekcionistické sítě sestávající z jednoduchých uzlů a jejich propojení jsou velmi užitečné pro pochopení těch psychologických procesů, které zahrnují PCS. Sem patří různé stránky procesu vidění, rozhodování, hledání vysvětlení a vyhledávání významu u porozumění řeči.<br />
<br />
Konekcionistické modely mohou simulovat učení za pomoci metod zahrnujících hebkovský způsoby učení a zpětného šíření. Současně aktivované jednotky mají větší váhu.<br />
<br />
U lidí se vyskytují procesy, které umožňují šíření aktivace mezi jednotkami prostřednictvím těchto spojů, jsou zde i procesy, které mohou upravovat vlastnosti spojů.<br />
<br />
Aplikace šíření aktivace a učení na jednotky v ústí v chování.<br />
<br />
Z pohledu psychologie jsou konekcionistické modely jen hrubou aproximací sítí skutečných neuronů.<br />
<br />
[[Kategorie: Kognitivní psychologie|*]]</div>Václav Sahula (sahulav@angeluss.cz)https://wikisofia.cz/w/index.php?title=Port%C3%A1l:Projekty/Informa%C4%8Dn%C3%AD_studia_a_knihovnictv%C3%AD_(2013-2014)&diff=4123Portál:Projekty/Informační studia a knihovnictví (2013-2014)2014-06-02T10:40:48Z<p>Václav Sahula (sahulav@angeluss.cz): </p>
<hr />
<div>'''→ [[Portál:Projekty|Projekty]]'''<br />
== Státnicové otázky ==<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
<br />
|| || [[Východiska informační vědy a teorie informace ]] || Petra Kubálková || <br />
|-<br />
|| || [[Informační etika a společenské dopady moderních informačních technologií]] || Jan Vlnas || <br />
|-<br />
|| || [[Systém výzkumu, metody informační vědy a vědecká komunikace ]] || || <br />
|-<br />
|| || [[Principy hodnocení vědy, přístupy a nástroje, situace v ČR ]] || || <br />
|-<br />
|| || [[Citační indikátory, rejstříky, databáze - srovnání a využití ]] || || <br />
|-<br />
|| || [[Bibliometrie a scientometrie, publikační a citační analýzy ]] || || <br />
|-<br />
|| || [[Právo a internet ]] ||Zuzana Sommerová || <br />
|-<br />
|| || [[Modely, principy a nástroje vyhledávání na webu a jeho trendy ]] || Naďa Buchtová || <br />
|-<br />
|| || [[HCI ]] || || <br />
|-<br />
|}<br />
<br />
==Hesla setříděná dle JITA Classification Schema==<br />
=== Teoretické a obecné aspekty knihovnictví a informací ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || [[Knihovnictví a informační věda jako oblast]] || || <br />
|-<br />
|| || [[Informační teorie a teorie knihovnictví]] || || <br />
|-<br />
|| || [[Vztah knihovnictví a informační vědy s dalšími obory]] || || <br />
|-<br />
|}<br />
=== Využívání informací, sociologické aspekty ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || [[Použití a vliv informací (Knihovnictví a IS)|Použití a vliv informací]] || || <br />
|-<br />
|| || [[Bibliometrické metody]] || || <br />
|-<br />
|| || [[Informace a společnost]] || || <br />
|-<br />
|| || [[Informační společnost]] ||Karolína Cisáriková || <br />
|-<br />
|| || [[Informační ekonomika]] || || <br />
|-<br />
|| || [[Informační politika]] || || <br />
|-<br />
|| || [[Rozšiřování informací]] || || <br />
|-<br />
|| || [[Analýza informačních potřeb]], [[analýza informačních požadavků]] || || <br />
|-<br />
|| || [[Uživatelská rozhraní a použitelnost]] ||Václav Sahula || <br />
|-<br />
|}<br />
<br />
=== Uživatelé, gramotnost a čtení ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka <br />
|-<br />
|| || [[Kategorie uživatelů (Knihovnictví a IS)|Kategorie uživatelů: děti, mladiství, sociální skupiny]] ||Adéla Krčková || <br />
|-<br />
|| || Příprava uživatelů, podpora, aktivity, vzdělávání || || <br />
|-<br />
|| || [[Gramotnost (Knihovnictví a IS)|Informační gramotnost]] || Kristýna Fousková || <br />
|-<br />
|| || [[Čtení a vyprávění příběhů]] || Mária Kadučáková || <br />
|-<br />
|| || [[Biblioterapie (Knihovnictví a IS)|Biblioterapie]] || Tereza Hrychová || <br />
|-<br />
|}<br />
<br />
=== Knihovny jako fyzické sbírky ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || světové knihovny || || <br />
|-<br />
|| || národní knihovny || || <br />
|-<br />
|| || veřejné knihovny || Romana Friessová || <br />
|-<br />
|| || akademické knihovny || || <br />
|-<br />
|| || školní knihovny || Petra Šicová || <br />
|-<br />
|| || knihovny státní správy || || <br />
|-<br />
|| || soukromé knihovny || || <br />
|-<br />
|| || odborné knihovny || || <br />
|-<br />
|| || vědecké knihovny || || <br />
|-<br />
|| || technické knihovny || Kristýna Fridrichová || <br />
|-<br />
|| || lékařské knihovny || || <br />
|-<br />
|| || archivy || Barbora Obstová|| <br />
|-<br />
|| || muzea || || |-<br />
|}<br />
<br />
=== Vydavatelství /nakladatelství a legislativní otázky ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || hromadné sdělovací prostředky ||Jan Sadílek || <br />
|-<br />
|| || tisk, elektronické publikování, vysílání || || <br />
|-<br />
|| || knižní prodej || || <br />
|-<br />
|| || [[Duševní vlastnictví: autorská práva, vlastnictví, copyright, copyleft]] || Věnceslava Zellerová|| <br />
|-<br />
|| || Intelektuální svoboda || || <br />
|-<br />
|| || [[cenzura (na internetu) ]] || Jana Nowaková || <br />
|-<br />
|}<br />
<br />
=== Management ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || spolupráce || || <br />
|-<br />
|| || [[marketing]] || Tereza Bártová|| <br />
|-<br />
|| || finance || || <br />
|-<br />
|| || [[public relations]] || Zita Kadlecová || <br />
|-<br />
|| || personální management || Šárka Jilečková || <br />
|-<br />
|| || financování || || <br />
|-<br />
|| || místní státní správ || || <br />
|-<br />
|| || reorganizace || || <br />
|-<br />
|| || nečleněné autority || || <br />
|-<br />
|}<br />
<br />
=== Průmysl, povolání, vzdělání ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || [[informační průmysl]] ||Pavla Hubálková || <br />
|-<br />
|| || softwarový průmysl || || <br />
|-<br />
|| || počítačový a telekomunikační průmysl || || <br />
|-<br />
|| || [[organizace]] || || <br />
|-<br />
|| || [[zaměstnanci]] || || <br />
|-<br />
|| || biografie || || <br />
|-<br />
|| || hlediska vzdělávacího plánu || || <br />
|-<br />
|| || vzdělání || || <br />
|-<br />
|| || [[školení]] || || <br />
|-<br />
|}<br />
<br />
=== Informační zdroje, podpora, kanály ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
<br />
|| || šedá literatura || Michaela Charvátová || <br />
|-<br />
|| || archivní materiály || || <br />
|-<br />
|| || vzácné knihy a rukopisy || || <br />
|-<br />
|| || tištěné zdroje || || <br />
|-<br />
|| || mikrofiše || || <br />
|-<br />
|| || netištěné zdroje || || <br />
|-<br />
|| || audiovizuální zdroje, multimediální zdroje || Jindřich Pecinovský|| <br />
|-<br />
<br />
|| || [[opac]] || Marek Čejka || <br />
|-<br />
|| || elektronické časopisy || || <br />
|-<br />
|| || elektronické knihy || Johana Bradaričová || <br />
|-<br />
|| || elektronické zdroje || || <br />
<br />
|-<br />
|| || repozitáře || || <br />
|-<br />
|}<br />
<br />
=== Zpracování informací a informační servis ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || katalogizace, bibliografická kontrola || || <br />
|-<br />
|| || obsahová analýza || || <br />
|-<br />
|| || jazkykový rejstřík, systémový rejsřík, rejstřík postupů || || <br />
|-<br />
|| || reprezentace znalostí ||Matej Komín|| <br />
|-<br />
|| || datové a a metadatové struktury ||Václav Sahula || <br />
|-<br />
|| || přenos informací, protokoly, formáty, techniky || || <br />
|-<br />
|| || prezentace informací: hypertext, hypermedi || || <br />
|-<br />
|| || filtrování || || <br />
|-<br />
|| || referenční práce || || <br />
|-<br />
|| || návrh, vývoj, implementace a údržba || || <br />
|-<br />
|}<br />
<br />
=== Technický servis v knihovnách, archívech a muzeích ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || [[akvizice]] || Lucie Königsmarková || <br />
|-<br />
|| || výběry || || <br />
|-<br />
|| || revize || || <br />
|-<br />
|| || evidence || || <br />
|-<br />
|| || ochrana papíru || || <br />
|-<br />
|| || digitalizace || Natalie Ostráková || <br />
|-<br />
|| || ochrana digitálních dokumentů || Tereza Prchalová || <br />
|-<br />
|| || výpůjčky || || <br />
|-<br />
|| || dodávání dokumentů || || <br />
|-<br />
|| || [[meziknihovní výpůjční služby]] || Kristýna Mrázová|| <br />
|-<br />
|| || výstavba knihoven || || <br />
|-<br />
|| || Centrum informačních zdrojů || || <br />
|-<br />
|| || knihovny, archivy a muzejní budovy || || <br />
|-<br />
|| || nábytek || || <br />
|-<br />
<br />
|| || architektura || || <br />
|-<br />
|| || plánování, design, stěhování || || <br />
|-<br />
|| || [[bezpečnost, ochrana]] || Simona Kutná|| <br />
|-<br />
|| || [[Plánování pro případ katastrof a pohrom]] || || <br />
|-<br />
|}<br />
<br />
=== informační technologie, knihovnické technologie ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || telekomunikace || || <br />
|-<br />
|| || [[počítačová síť - internet, včetně www]] ||Pavel Klimunda || <br />
|-<br />
|| || [[počítače]] ||Josef Pelant || <br />
|-<br />
|| || scanery ||Vojtěch Hlavsa || <br />
|-<br />
|| || digitální fotoaparáty ||Martina Podhůrská || <br />
|-<br />
|| || kopírovací stroje || || <br />
|-<br />
|| || [[počítačová a síťová bezpečnost]] || || <br />
|-<br />
|| || ověřování a přístup || || <br />
|-<br />
|| || [[software]] || || <br />
|-<br />
|| || softwarové metodologie a inženýrské postupy || || <br />
|-<br />
|| || automatizované zpracování jazyka || || <br />
|-<br />
|| || automatické vyhledávání textu || || <br />
|-<br />
|| || systém pro řízení databází || Martin Večeřa || <br />
|-<br />
|| || Objektově orientované systémy databází || || <br />
|-<br />
|| || Inteligentí prostředky, inteligentní agenti || Daria Roik || <br />
|-<br />
|| || [[knihovnické automatizované systémy, knihovnické software]] ||Zuzana Burkertová || <br />
|-<br />
|| || [[opac, veřejně přístupné katalogy (discovery systémy)]] ||Jaroslav Pleskot|| <br />
|-<br />
|| || vyhledávače, vyhledávací nástroje ||Jana Jůzová || <br />
|-<br />
|}</div>Václav Sahula (sahulav@angeluss.cz)https://wikisofia.cz/w/index.php?title=Port%C3%A1l:Projekty/Informa%C4%8Dn%C3%AD_studia_a_knihovnictv%C3%AD_(2013-2014)&diff=3696Portál:Projekty/Informační studia a knihovnictví (2013-2014)2014-05-06T13:35:42Z<p>Václav Sahula (sahulav@angeluss.cz): /* Využívání informací, sociologické aspekty */</p>
<hr />
<div>'''→ [[Portál:Projekty|Projekty]]'''<br />
== Státnicové otázky ==<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
<br />
|| || [[Východiska informační vědy a teorie informace ]] || || <br />
|-<br />
|| || [[Informační etika a společenské dopady moderních informačních technologií]] || || <br />
|-<br />
|| || [[Systém výzkumu, metody informační vědy a vědecká komunikace ]] || || <br />
|-<br />
|| || [[Principy hodnocení vědy, přístupy a nástroje, situace v ČR ]] || || <br />
|-<br />
|| || [[Citační indikátory, rejstříky, databáze - srovnání a využití ]] || || <br />
|-<br />
|| || [[Bibliometrie a scientometrie, publikační a citační analýzy ]] || || <br />
|-<br />
|| || [[Právo a internet ]] ||Zuzana Sommerová || <br />
|-<br />
|| || [[Modely, principy a nástroje vyhledávání na webu a jeho trendy ]] || || <br />
|-<br />
|| || [[HCI ]] || || <br />
|-<br />
|}<br />
<br />
==Hesla setříděná dle JITA Classification Schema==<br />
=== Teoretické a obecné aspekty knihovnictví a informací ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || [[Knihovnictví a informační věda jako oblast]] || || <br />
|-<br />
|| || [[Informační teorie a teorie knihovnictví]] || || <br />
|-<br />
|| || [[Vztah knihovnictví a informační vědy s dalšími obory]] || || <br />
|-<br />
|}<br />
=== Využívání informací, sociologické aspekty ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || [[Použití a vliv informací (Knihovnictví a IS)|Použití a vliv informací]] || || <br />
|-<br />
|| || [[Bibliometrické metody]] || || <br />
|-<br />
|| || [[Informace a společnost]] || || <br />
|-<br />
|| || [[Informační společnost]] ||Karolína Cisáriková || <br />
|-<br />
|| || [[Informační ekonomika]] || || <br />
|-<br />
|| || [[Informační politika]] || || <br />
|-<br />
|| || [[Rozšiřování informací]] || || <br />
|-<br />
|| || [[Analýza informačních potřeb]], [[analýza informačních požadavků]] || || <br />
|-<br />
|| || [[Uživatelská rozhraní a použitelnost]] ||Václav Sahula || <br />
|-<br />
|}<br />
<br />
=== Uživatelé, gramotnost a čtení ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka <br />
|-<br />
|| || [[Kategorie uživatelů (Knihovnictví a IS)|Kategorie uživatelů: děti, mladiství, sociální skupiny]] ||Adéla Krčková || <br />
|-<br />
|| || Příprava uživatelů, podpora, aktivity, vzdělávání || || <br />
|-<br />
|| || [[Gramotnost (Knihovnictví a IS)|Informační gramotnost]] || Kristýna Fousková || <br />
|-<br />
|| || [[Čtení a vyprávění příběhů]] || Mária Kadučáková || <br />
|-<br />
|| || [[Biblioterapie (Knihovnictví a IS)|Biblioterapie]] || Tereza Hrychová || <br />
|-<br />
|}<br />
<br />
=== Knihovny jako fyzické sbírky ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || světové knihovny || || <br />
|-<br />
|| || národní knihovny || || <br />
|-<br />
|| || veřejné knihovny || || <br />
|-<br />
|| || akademické knihovny || || <br />
|-<br />
|| || školní knihovny || Petra Šicová || <br />
|-<br />
|| || knihovny státní správy || || <br />
|-<br />
|| || soukromé knihovny || || <br />
|-<br />
|| || odborné knihovny || || <br />
|-<br />
|| || vědecké knihovny || || <br />
|-<br />
|| || technické knihovny || Kristýna Fridrichová || <br />
|-<br />
|| || lékařské knihovny || || <br />
|-<br />
|| || archivy || Barbora Obstová|| <br />
|-<br />
|| || muzea || || |-<br />
|}<br />
<br />
=== Vydavatelství /nakladatelství a legislativní otázky ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || hromadné sdělovací prostředky ||Jan Sadílek || <br />
|-<br />
|| || tisk, elektronické publikování, vysílání || || <br />
|-<br />
|| || knižní prodej || || <br />
|-<br />
|| || Duševní vlastnictví: autorská práva, vlastnictví, copyright, copyleft || Věnceslava Zellerová|| <br />
|-<br />
|| || Intelektuální svoboda || || <br />
|-<br />
|| || [[cenzura (na internetu) ]] || Jana Nowaková || <br />
|-<br />
|}<br />
<br />
=== Management ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || spolupráce || || <br />
|-<br />
|| || marketing || Tereza Bártová|| <br />
|-<br />
|| || finance || || <br />
|-<br />
|| || public relations || Zita Kadlecová || <br />
|-<br />
|| || personální management || || <br />
|-<br />
|| || financování || || <br />
|-<br />
|| || místní státní správ || || <br />
|-<br />
|| || reorganizace || || <br />
|-<br />
|| || nečleněné autority || || <br />
|-<br />
|}<br />
<br />
=== Průmysl, povolání, vzdělání ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || informační průmysl ||Pavla Hubálková || <br />
|-<br />
|| || softwarový průmysl || || <br />
|-<br />
|| || počítačový a telekomunikační průmysl || || <br />
|-<br />
|| || organizace || || <br />
|-<br />
|| || zaměstanci || || <br />
|-<br />
|| || biografie || || <br />
|-<br />
|| || hlediska vzdělávacího plánu || || <br />
|-<br />
|| || vzdělání || || <br />
|-<br />
|| || školení || || <br />
|-<br />
|}<br />
<br />
=== Informační zdroje, podpora, kanály ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
<br />
|| || šedá literatura || Michaela Charvátová || <br />
|-<br />
|| || archivní materiály || || <br />
|-<br />
|| || vzácné knihy a rukopisy || || <br />
|-<br />
|| || tištěné zdroje || || <br />
|-<br />
|| || mikrofiše || || <br />
|-<br />
|| || netištěné zdroje || || <br />
|-<br />
|| || audiovizuální zdroje, multimediální zdroje || Jindřich Pecinovský|| <br />
|-<br />
<br />
|| || opac || Marek Čejka || <br />
|-<br />
|| || elektronické časopisy || || <br />
|-<br />
|| || elektronické knihy || || <br />
|-<br />
|| || elektronické zdroje || || <br />
<br />
|-<br />
|| || repozitáře || || <br />
|-<br />
|}<br />
<br />
=== Zpracování informací a informační servis ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || katalogizace, bibliografická kontrola || || <br />
|-<br />
|| || obsahová analýza || || <br />
|-<br />
|| || jazkykový rejstřík, systémový rejsřík, rejstřík postupů || || <br />
|-<br />
|| || reprezentace znalostí || || <br />
|-<br />
|| || datové a a metadatové struktury || || <br />
|-<br />
|| || přenos informací, protokoly, formáty, techniky || || <br />
|-<br />
|| || prezentace informací: hypertext, hypermedi || || <br />
|-<br />
|| || filtrování || || <br />
|-<br />
|| || referenční práce || || <br />
|-<br />
|| || návrh, vývoj, implementace a údržba || || <br />
|-<br />
|}<br />
<br />
=== Technický servis v knihovnách, archívech a muzeích ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || akvizice ||Lucie Königsmarková || <br />
|-<br />
|| || výběry || || <br />
|-<br />
|| || revize || || <br />
|-<br />
|| || evidence || || <br />
|-<br />
|| || ochrana papíru || || <br />
|-<br />
|| || digitalizace ||Natalie Ostráková || <br />
|-<br />
|| || ochrana digitálních dokumentů || || <br />
|-<br />
|| || výpůjčky || || <br />
|-<br />
|| || dodávání dokumentů || || <br />
|-<br />
|| || meziknihovní výpůjční služby || Kristýna Mrázová|| <br />
|-<br />
|| || výstavba knihoven || || <br />
|-<br />
|| || Centrum informačních zdrojů || || <br />
|-<br />
|| || knihovny, archivy a muzejní budovy || || <br />
|-<br />
|| || nábytek || || <br />
|-<br />
<br />
|| || architektura || || <br />
|-<br />
|| || plánování, design, stěhování || || <br />
|-<br />
|| || bezpečnost, ochrana || || <br />
|-<br />
|| || Plánování pro případ katastrof a pohrom || || <br />
|-<br />
|}<br />
<br />
=== informační technologie, knihovnické technologie ===<br />
{| class="wikitable sortable" width="100%"<br />
|-<br />
! Akademický rok !! Heslo !! Student !! Známka<br />
|-<br />
|| || telekomunikace || || <br />
|-<br />
|| || počítačová síť - internet, včetně www ||Pavel Klimunda || <br />
|-<br />
|| || počítače || || <br />
|-<br />
|| || scanery || || <br />
|-<br />
|| || digitální fotoaparáty ||Martina Podhůrská || <br />
|-<br />
|| || kopírovací stroje || || <br />
|-<br />
|| || počítačová a síťová bezpečnost || || <br />
|-<br />
|| || ověřování a přístup || || <br />
|-<br />
|| || software || || <br />
|-<br />
|| || softwarové metodologie a inženýrské postupy || Jan Vlnas || <br />
|-<br />
|| || automatizované zpracování jazyka || || <br />
|-<br />
|| || automatické vyhledávání textu || || <br />
|-<br />
|| || systém pro řízení databází || Martin Večeřa || <br />
|-<br />
|| || Objektově orientované systémy databází || || <br />
|-<br />
|| || Inteligentí prostředky, inteligentní agenti || Daria Roik || <br />
|-<br />
|| || knihovnické automatizované systémy, knihovnické software ||Zuzana Burkertová || <br />
|-<br />
|| || opac, veřejně přístupné katalogy ||Jaroslav Pleskot|| <br />
|-<br />
|| || vyhledávače, vyhledávací nástroje || || <br />
|-<br />
|}</div>Václav Sahula (sahulav@angeluss.cz)