1 / 21

Zpracování informací a znalostí Datové struktury a algoritmy pro vyhledávání informací

Zpracování informací a znalostí Datové struktury a algoritmy pro vyhledávání informací. Doc. RNDr. Jan Rauch, CSc. Katedra informačního a znalostního inženýrství. Datové struktury a algoritmy pro vyhledávání informací. Literatura:

ksena
Download Presentation

Zpracování informací a znalostí Datové struktury a algoritmy pro vyhledávání informací

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Zpracování informací a znalostíDatové struktury a algoritmy pro vyhledávání informací Doc. RNDr. Jan Rauch, CSc. Katedra informačního a znalostního inženýrství

  2. Datové struktury a algoritmy pro vyhledávání informací Literatura: Rauch, J.: Metody zpracování informací II, kapitoly 13, 14 KUČERA, L.: Kombinatorické algoritmy. Praha, SNTL 1983, 280 str. SALTON, G. - McGILL, M.: Introduction to Modern Information Retrieval. Tokyo, McGraw-Hill Book Company Japan 1983, 448 s.

  3. Datové struktury a algoritmy pro vyhledávání informací • Základní pojmy • Sekvenční vyhledávání • Binární vyhledávání • Invertovaný soubor

  4. Základní pojmy • záznam (bibliografický záznam) • pole • klíč je pole, podle jehož hodnoty vyhledáváme ……. Novák Vyhledávání informací GRADA 2000 počítač, tezaurus, knihovna Kadlec Historie počítačů PASEKA 1999 počítač, historie, DOS Zounar Informační služby UK 2001 počítač, tezaurus, knihovna

  5. Základní pojmy Hodnocení algoritmů : - typická operace (např. porovnání klíčů) - maximální počet typických operací - průměrný počet typických operací - složitost aktualizace potřebných datových struktur - … viz literatura …

  6. Datové struktury a algoritmy pro vyhledávání informací • Základní pojmy • Sekvenční vyhledávání • Binární vyhledávání • Invertovaný soubor

  7. Sekvenční vyhledávání Situace A: - neuspořádaný seznam N záznamů (Autor - Název - Deskriptory obsahu), - může být více záznamů s jednou hodnotou klíče (např. více záznamů s jedním autorem) Úloha: Nalézt všechny záznamy se zadanou hodnotou daného klíče (např. všechny knihy, jejichž autorem je Novák)

  8. Sekvenční vyhledávání Situace A (může být více záznamů s jednou hodnotou klíče) Příklad: N záznamů … - Počet potřebných porovnání: N - Aktualizace: bez problémů Novák ABC... Kadlec ZDU… Adam REP.. Zounar ZJK.. Novák XYZ…

  9. Sekvenční vyhledávání Situace B: - neuspořádaný seznam záznamů - právě jeden záznam pro danou hodnotu klíče (slovník autorů) Úloha: Nalézt záznam se zadanou hodnotou klíče

  10. Sekvenční vyhledávání Situace B (právě jeden záznam pro danou hodnotu klíče) Příklad: N záznamů Novák ABC... Kadlec ZDU… Adam REP.. Zounar ZJK.. Jonáš XYZ… … Po nalezení záznamu lze skončit! Počet porovnání pro nalezení N záznamů: 1 + 2 + 3 + … + N = N*(N + 1) / 2 Průměrný počet porovnání na nalezení 1 záznamu: (N + 1) / 2 Aktualizace: bez problémů

  11. Sekvenční vyhledávání Situace C: - neuspořádaný seznam záznamů - maximálně jeden záznam pro danou hodnotu klíče („neúplný slovník autorů“) Úloha: Nalézt záznam se zadanou hodnotou klíče

  12. Sekvenční vyhledávání Situace C (maximálně jeden záznam pro danou hodnotu klíče) Příklad: 5 záznamů Novák ABC... Kadlec ZDU… Adam REP.. Zounar ZJK.. Jonáš XYZ… K nenalezení autora Jonáše nutno 5 porovnání (obecně N) Průměrný počet porovnání na nalezení 1 záznamu: nelze určit, záleží na počtu hledání nevyskytujících se autorů Maximální počet porovnání na nalezení 1 záznamu: N (obecně) Aktualizace: bez problémů

  13. Modifikované sekvenční vyhledávání • - Právě jeden záznam pro danou hodnotu klíče • Známe pravděpodobnosti požadavků na • vyhledávání podle jednotlivých hodnot klíče

  14. Modifikované sekvenční vyhledávání Úsilí na vyhledání: 0.2 * 1 + 0.04 * 2 + 0.4 * 3 + 0.06 * 4 + 0.3 * 5 = 3.22 Po přerovnání Úsilí na vyhledání: 0.4 * 1 + 0.3 * 2 + 0.2 * 3 + 0.06 * 4 + 0.04 * 5 = 2.04

  15. Datové struktury a algoritmy pro vyhledávání informací • Základní pojmy • Sekvenční vyhledávání • Binární vyhledávání • Invertovaný soubor

  16. Binární vyhledávání Příklad: Vyhledáváni osob podle rodných čísel – hledáme ženu s rodným číslem 736021/0054 I) Uspořádáme záznamy podle velikosti: (čísla nevidíme) 741212/0053 725612/7865 730930/0067 736021/0054 737214/0012

  17. Binární vyhledávání Příklad: Vyhledáváni osob podle rodných čísel – hledáme ženu s rodným číslem 736021/0054 Princip řešení: I) Uspořádání do pole (např. vzestupně) podle rodných čísel II) Půlení intervalu: - Inicializace: interval := celé pole - Vyhledávanou hodnotu porovnáme s prostředním záznamem intervalu: = ... nalezeno, konec < ... dále hledáme v první polovině intervalu > ... dále hledáme ve druhé poloviné intervalu - Interval nelze rozpůlit: nenalezeno, konec

  18. Binární vyhledávání Maximální počet potřebných porovnání: úměrný Log2(N+1) Aktualizace: Složitá, třeba zachovat uspořádání, viz doplňkovou literaturu.

  19. Porovnání sekvenčního a binárního vyhledávání Předpoklady: - jeden záznam pro danou hodnotu klíče, - 1 operace = 1/1000 vteřiny. počet průměrný případ pro nejhorší případ pro záznamů sekvenční vyhledávání binární vyhledávání operací čas (vteřiny) operací čas (vteřiny) 31 16 0.016 5 0.005 119 60 0.060 7 0.007 1 999 1 000 1 11 0.011 9 999 5 000 5 14 0.014 999 999 500 000 500 20 0.020

  20. Datové struktury a algoritmy pro vyhledávání informací • Základní pojmy • Sekvenční vyhledávání • Binární vyhledávání • Invertovaný soubor

  21. Invertovaný soubor Invertovaný soubor: MZI II – kapitola 14 oprava: MZI II, str. 83: má být místo

More Related