Przyspieszenie knn. Plan wykładu. Klasyfikacja w oparciu o przykładach. Algorytm klasyfikacji. Funkcja odległoci
|
|
- Krzysztof Skrzypczak
- 6 lat temu
- Przeglądów:
Transkrypt
1 Plan wykładu Przyspieszenie knn Ulepszone metody indeksowania przestrzeni danych: R-drzewo, R*-drzewo, SS-drzewo, SR-drzewo. Klasyfikacja w oparciu o przykładach Problem indeksowania przestrzeni obiektów Struktura przestrzeni obiektów R-tree Operacje na R drzewie Insert Delete Search Wyszukiwania k najbliszych ssiadów w oparciu o R- drzewie Ulepszenia Klasyfikacja w oparciu o przykładach Algorytm klasyfikacji Wejcie: Tablica decyzyjna D, nowy obiekt x q Wyjcie: Klasa decyzyjna, do której naley x q (czyli Dec(x q )) Parametry: k - liczba ssiadów, funkcja odległoci d IBL: k najbliszych ssiadów Reguły decyzyjne Krok 1: Szukaj w zbiorze D, k najbliej połoonych obiektów {x 1, x 2,..., x k } Krok 2: Wyznacz klas dla x q na podstawie Dec(x 1 ), Dec(x 2 ),..., Dec(x k ) Funkcja odległoci Problematyki zwizane z klasyfikacj w oparciu o przykładach Niech kady obiekt x bdzie zdefiniowany wektorem wartoci: <a 1 (x),...,a k (x)> Odległo Euklidesowa: d( x, y) = ( a ( x) 2 a ( y) ) i i i Funkcja odległo Szukanie k najbliszych ssiadów Strategia głosowanie Dla atrybutów symbolicznych a i : 0 ai ( x) ai ( y) = 1 a ( x) = a ( y) a ( x) a ( y) Atrybuty rzeczywiste: Unormowa i i i i 1
2 Wyszukiwanie k najbliszych ssiadów Tablica danych: Sekwencyjne poszukiwanie: O(n) (n liczba obiektów w zbiorze D) Strukturalny zbiór danych (indeksowany zbiór danych): Struktura: Obiekty s prezentowane jako punkty w przestrzeni R n Przestrze obiektów jest podzielona na małe fragmenty Fragmenty s zapamitane w strukturze drzewiastym Wyszukiwanie: Przegldaj drzewo i wybieraj fragmenty, gdzie mog zawiera najbliszych ssiadów dla danego obiektu Szuka w znalezionych fragmentach najbliszych ssiadów Czas wyszukiwania: O(logn) Podział przestrzeni obiektów Przestrze obiektów jest podzielona na n-wymiarowe prostokty (niekoniecznie rozłczne). Prostokty pokrywaj wszystkie obiekty w zbiorze danych Prostokty s minimalne (MBR - Minimum Bounding Rectangle) Opis prostokta: I = {[a 1, b 1 ],...,[a n, b n ]} Struktura R-drzewa Własnoci R - drzewa Drzewo zrównowaone Wzeł wewntrzny zawiera klucze (opis prostokta I) i wskaniki do synów Wzeł zewntrzny zawiera list obiektów zawierajcych si w odpowiednim prostokcie Korze ma co najmniej dwóch synów Kady wzeł wewntrzny ma pomidzy m a M synów Kady li zawiera pomidzy m a M obiektów Wszystkie licie znajduj si na jednym poziomie drzewa m: minimalna liczba rozgałzienia w wle M: maksymalna liczba rozgałzienia w wle 2 m M Wzeł przepełniony: zawiera wicej ni M rekordów (kluczy) Wzeł niedomiarowy: zawiera mniej ni m rekordów Figure 1 Collections of Rectangles Operacje na drzewie Wstawianie (insert) Usuwanie (delete) Wyszukiwanie (search) Wstawianie obiektu do drzewa Wejcie: T dane R-drzewo, x new nowy obiekt do wstawiania Wyjcie: R-drzewo T zawierajce obiekt x new 2
3 Wstawianie obiektu do drzewa Wejcie: T: R - drzewo, x new - obiekt do wstawiania Wyjcie: T z obiektem x new Algorytm Insert: Krok 1. Wybieraj odpowiedni li L do wstawiania x new uywajc ChooseLeaf Krok 2. Jeli jest miejsce w L, wstaw x new w L wpp. 2.1 Wstaw x new w L 2.2 Podziel L na L 1 i L Modyfikuj drzewo uywajc AdjustTree Krok 3. Jeli korze musi by podzielony, utwórz nowy korze, którego synami s dwie czci poprzedniego korzenia Funkcja ChooseLeaf Wejcie: T: R - drzewo, x new - obiekt do wstawiania Wyjcie: odpowiedni li L dla x new (funkcja rekurencyjna) Krok 1. L korze(t) Krok 2. if L jest liciem return L; else // L jest wzłem wewntrznym wybierz prostokt F k L lecy najbliej obiektu x new Jeli takich jest kilka, wybierz najmniejszy prostokt Krok 3. Zastosuj ChooseLeaf dla F k Funkcja AdjustTree Zadania: Powiksza istniejce prostokty, eby zawierały nowy obiekt Podzieli due wzły na mniejsze, jeli zawieraj wicej ni M elementów Wejcie: T: drzewo, L li, od którego drzewo ma by modyfikowane Wyjcie: T spełniajce ograniczenia R-drzewa Funkcja AdjustTree Funkcja AdjustTree(L) Krok 1. ActiveNode L Krok 2. if ActiveNode jest korzeniem stop else P = ActiveNode.Parent(); Powiksz prostokt w P zwizany z ActiveNode, eby zawierał on wszystkie prostokty w ActiveNode; Krok 3. if P zawiera wicej ni M elementów SpliteNode (P); AdjustTree (P.Parent()); Funkcja Splite Funkcja Splite (c.d.) Zadanie: Podzieli przepełniony wzeł na dwa nowe wzły Kryterium: Nowe powstajce prostokty s małe Idea: Wybierz rdzenia nowych grup: wybierz dwa najdalej połoone prostokty i wstaw je do rónych wzłów Rozdziel pozostałe elementy: wstaw p do tej grupy, która wymaga najmniejszego powikszania, aby zawierała p Dobry podział Zły podział rdzenia 3
4 Algorytm Splite Usuwanie obiektu z drzewa Wejcie: Wzeł w zawiera M+1 elementów Wyjcie: Dwa wzły, kady zawiera pomidzy m a M elementów Krok 1: Wybierz rdzenia grup i wstaw je do dwóch nowych wzłów Krok 2: repeat przydziel elementy until wszystkie elementy s przydzielone do grup lub jedna grupa ma m (lub M+1-m) elementów Krok 3: dołcz pozostałe elementy do drugiej grupy Algorytm usuwania obiektu Wejcie:T: R - drzewo, x - obiekt do usuwania Wyjcie: T : drzewo bez x Krok 1: Szukaj licia L, który zawiera x (uywajc FindLeaf) Krok 2: Usu x z L Krok 3: Modyfikuj drzewo uywajc CondenseTree Krok 4: Jeli korze zawiera tylko jednego syna, usu stary korze, syn bdzie korzeniem. Funkcja FindLeaf Wejcie:T: R-drzewo, x: obiekt Wyjcie: li, który zawiera x Krok 1: Jeli T jest liciem zwracaj T Krok 2: Dla kadego syna T.s, jeli prostokt zawiera x to FindLeaf(T.s) Krok 3: Jeli T jest liciem, sprawd, czy w nim x wystpuje. Jeli tak, zwracaj T Funkcja CondenseTree Wyszukiwanie k najbliszych ssiadów za pomoc R- drzewa Wejcie:T: R - drzewo, L li, od którego drzewo ma by poprawione Wyjcie: T: skondensowane drzewo Krok 1: N = L; Jeli N nie jest korzeniem P = N.Parent() Krok 2: if N zawiera mniej ni m synów usu N z drzewa zapisz wszystkie elementy N na licie Q Krok 3: if N jest dobry zmniejsz prostokt w N, eby prostokt w N był MBR Krok 4: N = P; goto Krok 1 Krok 5: Wstaw wszystkie elementy Q do drzewa. 4
5 MBR Minimal Bounding Rectangle Własno MBR MBR jest n-wymiarowym prostoktem uywanym w R-drzewie, który ogranicza obiekty. Własno MBR: Kadaciana prostokta zawiera co najmniej jeden punkt bazy danych. Funkcje odległoci uywane do wyszukiwania k-nn MINDIST (p, R): minimalna odległo punktu p do prostokta R. MINDIST(p, R) = min o R d(p,o) Własnoci: Jeli p znajduje si wewntrz prostokta, to MINDIST(p,R) = 0 Dla kadego o D R, MINDIST(p, R) d(p,o) Funkcje odległoci uywane do wyszukiwania k-nn MINMAXDIST (p, R) jest minimalna odległo punktu p do najdalszych punktów cian prostokta R Jeli d*(p,s) oznacza odległo p do najdalszego punktu ciany S, to MINMAXDIST (p, R) = min S:ciana R d*(p,s) Własno: Istnieje obiekt w R, którego odległo do p jest mniejsza ni MINMAXDIST o D R d(p,o) MINMAXDIST(p, R) MINDIST & MINMAXDIST MINDIST(p,R) <= NN(p) <= MINMAXDIST(p,R) Algorytm szukanie najbliszego ssiada Idea: Przegldaj drzewo od korzenia w dół. Dla kadego wzła usu rozgałzienia, które nie powinny zawiera najbliszego ssiada Jeli doidziesz do licia, szukaj w nim najbliszego ssiada. 5
6 Usuwanie zbdnych rogałzie MINDIST vs MINMAXDIST Zasada 1: Prostokt R nie zawiera najbliszego ssiada dla p (wic bdzie usuwany) jeli istnieje prostokt R taki, e: MINDIST(p,R ) > MINMAXDIST(p,R) Zasada 2: Obiekt o nie jest najbliszym ssiadem p jeli istnieje prostokt R taki, e d(p,o) > MINIMAXDIST(p,R) Zasada 3: Prostokt R nie zawiera najbliszego ssiada punktu p jeli istnieje obiekt o taki, e MINDIST(p,R) > d(p,o) Zasada 1 Zasada 2 Zasada 3 R R p MINDIST MINMAXDIST R p d(p,o) o MINMAXDIST R MINDIST p o NN Search Algorithm Ulepszanie Krok 1: Inicjalizuj odległo do najbliszego ssiada = ; Krok 2: Obchod drzewo od korzenia w dół. Przy kadym nieodwiedzonym wle t sortuj prostokty zapisane w t rosnco wzgldem MINDIST i zapisz jego synów w licie ABL (Active Branch List) Krok 3: Usu z ABL zbdne rozgałzienia stosujc strategie przycinania 1 i 2. Krok 4: Dla kadego wzła t z ABL rekurencyjnie szukaj najbliszego ssiada p; Usu wzeł t z ABL Krok 5: Jeli wzeł jest liciem, poszukaj najbliszego ssiada. Aktualizuj odległo do najbliszego ssiada. Krok 6: Po powrocie z rekursji skorzystaj z zasady przycinania 3 w celu usunicia niezbdnych rozgałzie Krok 7: Jeli ABL = zwró najbliszego ssiada. Tylko zasada przycinania 3 jest stosowana; Tylko MINDIST jest potrzebny; Przycinanie tylko gdy nowy ssiad jest znaleziony Szukanie k najbliszych ssiadów Zapamita k aktualnych ssiadów w uporzdkowanym buforze (wg. rosncej odległoci ssiada od punktu p) Przycinanie wzgldem najdalszego punktu na licie Modyfikacje R-drzew R*- tree: Modyfikacja operacja insert, zmniejsza cz wspóln midzy regionami SS tree: przestrze obiektów jest pokryta sferami Zaleta: prostszy opis Wada: regiony zachodz si SR tree: kombinacja R-tree i SS tree X tree: regiony nie maj czsci wspólnej 6
7 Struktura R*-drzewa R*-drzewo Struktura i główne operacje Podobiestwo do R - drzewa: Uywa prostoktów MBR (Minimal Bounding Rectangle) do grupowania punktów w przestrzeni danych Drzewo ma wszelkie własnoci jak R-tree (ograniczenia na liczb rozgałzie,...) Rónica: ulepszony wariant R-drzewa Minimalizuje czci wspólne midzy prostoktami (regionami) na jednym poziomie drzewa Minimalizuje pola (objtoci) prostoktów (regionów) Minimalizuje wielko drzewa Struktura R* - drzewa (c.d.)- Modyfikacje Modyfikacja operacji Insert: Optymalna heurystyka podziału wzła (inna kryterium oceny jakoci podziału) Nowa operacja do rekonstrukcji drzewa: wymuszone wstawianie (forced re-insert) Podstawowe oznaczenia Pole prostokta (objto prostopadłocianu): area(r) Obwód prostokta (powierzchnia prostopadłocianu): margin(r) Pokrycie (overlap): prostoktami w wle t: p gdzie R 1, R 2,...,R p s rekordami wzła t ( R. Rectangle R Rectangle ) overlap ( Rk ) = area k i. i= 1, k i Pojcia podstawowe Ilustracja Podstawowe operacje na prostoktach Powikszanie prostokta: (enlargement(r,x)) Zwiksza prostokt R minimalnie, eby pokrywa obiekt x Area(R) Margin(R) x R Enlargement(R,x) overlap(r) 7
8 Podstawowe operacje na drzewach Wstawianie (insert) Usuwanie (delete) Wyszukiwanie (search) Wstawianie Ogólny schemat: Szukaj licia do wstawiania (ChooseLeaf(x) ) Wstaw nowy obiekt Modyfikuj drzewo ChooseLeaf Idea Przegldaj drzewo top-down: W kadym wle wewntrznym: wybierz poddrzewo zawierajce prostokt, który wymaga najmniejszego powikszenia, eby pokrywa nowy obiekt W kadym wle zewntrznym (li): wybierz prostokt, który po powikszaniu ma najmniejsze pokrycie (overlap) z innymi prostoktami tego samego licia ChooseLeaf Ilustracja (7,5;70) (7,5;70) (7,5;70) Li znaleziony przez R * drzewo Li znaleziony przez R drzewo Funkcja ChooseLeaf Wejcie: T: R* - drzewo, x - obiekt do wstawiania Wyjcie: odpowiedni li L dla x Krok 1. L korze(t) Krok 2. if L jest liciem wybierz prostokt R taki, e enlargement (R,x) ma najmniejsz cz wspóln z innymi prostoktami w tym liciu; else // L jest wzłem wewntrznym wybierz syna S, który jest zwizany z prostoktem R o najmniejszym enlargement (R,x) Krok 3. Zastosuj ChooseLeaf dla S Modyfikuj drzewo Ogólny schemat Jeli li L nie jest przepełniony to Powiksz prostokt w L, do którego nowy obiekt był wstawiany Rekurencyjnie powiksz wszystkie prostokty w przodkach L, eby zawierały prostokty w liciu L. Jeli li L jest przepełniony to Podziel li L na 2 licie L 1 i L 2 lub Wykonuj re-insert dla czci prostoktów w L W sposób rekurencyjny modyfikuj ojca L 8
9 Podzieli przepełniony wzeł - Idea Krok 1: Wybierz o S, wzgldem której podział ma by wykonywany Krok 2: Wybierz na osi S najlepszy podział Krok 3: Podziel obiekty Oceny jakoci podziału Niech P oznacza podział zbioru prostoktów S na dwa rozłczne podzbiory S 1 i S 2 bb(s i ): najmniejszy prostokt zawierajcy S i area-value(p) = area[bb(s 1 )] + area[bb(s 2 )] margin-value(p) = margin[bb(s 1 )] + margin[bb(s 2 )] overlap-value(p) = area[bb(s 1 ) bb(s 2 )] Podział P jest dobry, jeli wartoci area, margin i overlap s małe Algorytm wyboru osi Krok 1: Dla kadej osi X Uporzdkuj prostokty wzgldem X Oblicz warto margin-value(x): suma margin-value wszystkich podziałów na X Krok 2: Wybierz o o najmniejszej wartoci margin-value margin-value(x) = = margin-value(p 1 )+margin-value(p 2 )+margin-value(p 3 ) Algorytm wyboru miejsca podziału Dla wybranej osi X Dla kadego podziału P na X oblicz overlap-value(p) Wybierz podział o najmniejszej wartoci overlap-value Jeli istnieje kilka podziałów o najmniejszej wartoci overlapvalue, wybierz ten z najmniejsz area-value R 4 R 1 R 2 R 3 P 1 P 2 P 3 X P 1 P 2 P 3 overlap-value(p 2 ) Rekonstrukcja drzewa W R-drzewie: regiony s niezmienne podczas wstawiania obiektu (chyba e jest podzielony na dwa regiony); Wstawianie z rekonstrukcj - Ilustracja m = 2, M = 5 Wada: utworzone na pocztku prostokty s optymalne dla pierwszych obiektów, ale nie s optymalne dla nowych wstawianych obiektów Potrzeba narzdzi do rekonstrukcji drzewa R*-tree proponuje operacj wymuszonego wstawiania (forced reinsert) Regiony przed wstawianiem R drzewo: regiony po wstawianiu R* -drzewo: regiony po wstawianiu 9
10 Idea algorytmu reinsert (Przy wstawianiu nowego obiektu) Jeli wzeł t jest przepełniony (ma M+1 synów) i t nie był reorganizowany to Krok 1: wytnij p synów wzła t Krok 2: zmniejsz prostokt w t tak, eby nadal zawierał pozostałych synów Krok 3: wstaw z powrotem prostokty zwizane z wybranymi synami. Algorytm reinsert Dla przepełnionego wzła t (ma M+1 synów): Krok 1: Dla kadego syna s, oblicz odległo rodka prostokta zwizanego z s do rodka prostokta w t Krok 2: Uporzdkuj malejco synów wzgldem odległoci od swojego rodka do rodka prostokta w t Krok 3: Wybierz p pierwszych synów na licie Krok 4: Usu je i zmniejsz prostokt w t Krok 5: Wstaw z powrotem p usunitych prostoktów Reinsert - Ilustracja Ocena R * -drzewa R*- drzewo jest stabilny wobec złoliwych danych redni koszt wstawiania i usuwania na R*- drzewie jest niszy ni na R- drzewie Czas wyszukiwania jest szybszy ni na R- drzewie Regiony przed operacj reinsert Obiekty wybrane do ponownego wstawiania, p=3 Regiony po operacji reinsert Struktura SS-drzewo SS-drzewo Struktura i główne operacje Podobna struktura do R-drzewa Regiony s kołami Opis regionu: para (rodek, promie) rodek:rodek cikoci figury tworzonej przez rodki kół zapisanych w synach promie: odległo do najdalszego koła zapisanego w synach. 10
11 Struktura SS-drzewo Algorytm Insert Krok 1. Szukaj licia L do wstawiania Krok 2. Wstaw nowy obiekt x do L Krok 3. Modyfikuj drzewo (*od licia L do korzenia*) 3.1 Jeli zbadany wzeł t nie jest przepełniony Powiksz promie w t 3.2 Jeli wzeł t jest przepełniony i t nie był rekonstruowany re-insert (t) 3.3 Jeli t jest przepełniony i t był rekonstruowany splite (t) Algorytm podziału: Splite Cel: Podziel zbiór kół na dwa podzbiory, których koła ograniczajce maj małe promienie i jak najmniej zachodz si na siebie Krok 1: Wybierz o S, wzgldem której podział ma by wykonywany Krok 2: Wybierz na osi S najlepszy podział Krok 3: Podziel obiekty Ocena podziału Niech X bdzie osi współrzdnych Niech S bdzie zbiorem kół variance(s,x) = odległo midzy rodkami dwóch najdalszych kół na osi X Niech P oznacza podział zbioru kół S na dwa rozłczne podzbiory S 1 i S 2 variance(p) = variance(s 1 )+variance(s 2 ) Podział P jest dobry jeli variance(p) jest minimalny Wybór osi Szukanie miejsca podziału Dla kadej osi X Uporzdkuj koła wzgldem X Oblicz odległo najdalszych koł na osi X. ozn. variance(x) Wybierz o z najwiksz wartoci variance Dla wybranej osi X Dla kadego podziału P na X oblicz variance(p) Wybieraj podział o najmniejszej wartoci variance najlepszy podział variance(x) X P 1 P 2 P 3 X 11
12 Ocena SS -drzewa Zaleta: Mała informacja potrzebna do opisu koła ni prostokata rednica koła zwiksza si do wolno wzgldem wzrostu wymiaru danych (liczby atrybutów) szybki czas wyszukiwania w jednym regionie. Wada: Koło ma wiksz objto ni prostokt wiksza cz wspólna z innymi kołami (more overlap) SR-drzewo Struktura i główne operacje Obserwacja Prostokty dziel przestrze danych na regiony o małej objtoci, ale maj one du rednic ni koło Koła dziel przestrze danych na regiony o małej rednicy, ale ich objtoci s wiksze ni prostokty Rozwizanie: kombinacja prostoktów i kół SR - drzewo Struktura SR - drzewa Podobna struktura do R-drzewa Region jest przeciciem koła i prostokta Opis regionu: para (prostokt, koło) Prostokt : I =[(a 1,b 1 ),...,(a k,b k )] Koło: (rodek, promie) Algorytm: Insert Prostokt jest aktualizowany tak jak w R*- drzewie Koło wle t jest aktualizowane: (C 1,...,C k koła zwizane z synami t ) rodek: Algorytm Insert (c.d.) Promie: d s : maksymalna odległo rodka koła w wle t do kół w synach d r : maksymalna odległo rodka koła w wle t do prostoktów w synach gdzie C i : koło zwizane z i-tym synem C i.x i : i-ta współrzdna rodka koła C i C i.w: liczba obiektów zawartych w kole C i rodek koła Promie r 12
13 Szukanie najbliszego ssiada Odległo d punktu P do regionu zapisanego w wle C k jest definiowana: d s. : minimalna odległo punktu P do koła w wle C k d r : minimalna odległo punktu P do prostokta w wle C k x d r d s P Ocena SR-drzewa Zaleta: Zmniejsza i objto i rednic regionu w porównaniu z R*-drzewem i SS-drzewem Czas wyszukiwania krótszy ni SS-drzewo i R*- drzewo Wada: Koszt budowania SR-drzewa jest wikszy ni SSdrzewa. Rozmiar wzła wikszy od rozmiaru wzła SSdrzewa i R*-drzewa d = max(d s.,d r ) Podsumowanie R*-drzewo: ulepszony wariant R-drzewa Nowa heurystyka dla optymalizacji podziału -> modyfikacja w funkcji splite Nowa operacja rekonstrukcji drzewa: re-insert SS-drzewo: regiony s kołami SR-drzewo: regiony s przecicem prostokta i koła 13
PRZYSPIESZENIE KNN. Ulepszone metody indeksowania przestrzeni danych: R-drzewo, R*-drzewo, SS-drzewo, SR-drzewo.
PRZYSPIESZENIE KNN Ulepszone metody indeksowania przestrzeni danych: R-drzewo, R*-drzewo, SS-drzewo, SR-drzewo. Plan wykładu Klasyfikacja w oparciu o przykładach Problem indeksowania przestrzeni obiektów
Bardziej szczegółowoBazy danych. Plan wykładu. Metody organizacji pliku rekordów. Pojcie indeksu. Wykład 11: Indeksy. Pojcie indeksu - rodzaje indeksów
Plan wykładu Bazy Wykład 11: Indeksy Pojcie indeksu - rodzaje indeksów Metody implementacji indeksów struktury statyczne struktury dynamiczne Małgorzata Krtowska Katedra Oprogramowania e-mail: mmac@ii.pb.bialystok.pl
Bardziej szczegółowoTemat: Geometria obliczeniowa cz II. Para najmniej odległych punktów. Sprawdzenie, czy istnieje para przecinajcych si odcinków.
Temat: Geometria obliczeniowa cz II. Para najmniej odległych punktów. Sprawdzenie, czy istnieje para przecinajcych si odcinków. 1. Para najmniej odległych punktów WP: Dany jest n - elementowy zbiór punktów
Bardziej szczegółowoTadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski
: idea Indeksowanie: Drzewo decyzyjne, przeszukiwania binarnego: F = {5, 7, 10, 12, 13, 15, 17, 30, 34, 35, 37, 40, 45, 50, 60} 30 12 40 7 15 35 50 Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski
Bardziej szczegółowoBazy danych. Plan wykładu. Klucz wyszukiwania. Pojcie indeksu. Wykład 8: Indeksy. Pojcie indeksu - rodzaje indeksów
Plan wykładu Bazy Wykład 8: Indeksy Pojcie indeksu - rodzaje indeksów Metody implementacji indeksów struktury statyczne struktury dynamiczne Małgorzata Krtowska Katedra Oprogramowania e-mail: mmac@ii.pb.bialystok.pl
Bardziej szczegółowoTemat: Struktury do przechowywania danych w pamici zewntrznej. B - drzewa. B * - drzewa. B + - drzewa.
Temat: Struktury do przechowywania danych w pamici zewntrznej. B - drzewa. B * - drzewa. B + - drzewa. Podstawow jednostk w operacjach wejcia - wyjcia zwizanych z dyskiem (pamici zewntrzn) jest blok. czas
Bardziej szczegółowoTemat: Liniowe uporzdkowane struktury danych: stos, kolejka. Specyfikacja, przykładowe implementacje i zastosowania. Struktura słownika.
Temat: Liniowe uporzdkowane struktury danych: stos, kolejka. Specyfikacja, przykładowe implementacje i zastosowania. Struktura słownika. 1. Pojcie struktury danych Nieformalnie Struktura danych (ang. data
Bardziej szczegółowoSzukanie najkrótszych dróg z jednym ródłem
Szukanie najkrótszych dróg z jednym ródłem Algorytm Dijkstry Załoenia: dany jest spójny graf prosty G z wagami na krawdziach waga w(e) dla kadej krawdzi e jest nieujemna dany jest wyróniony wierzchołek
Bardziej szczegółowoTemat: Problem minimalnego drzewa Steinera. Definicja problemu. Zastosowania. Algorytm dokładny Hakimi. Algorytmy aproksymacyjne.
Temat: Problem minimalnego drzewa Steinera. Definicja problemu. Zastosowania. Algorytm dokładny Hakimi. Algorytmy aproksymacyjne. 1. Definicja problemu Wejcie: Graf spójny niezorientowany G =
Bardziej szczegółowoKompresja danych Streszczenie Studia Dzienne Wykład 10,
1 Kwantyzacja wektorowa Kompresja danych Streszczenie Studia Dzienne Wykład 10, 28.04.2006 Kwantyzacja wektorowa: dane dzielone na bloki (wektory), każdy blok kwantyzowany jako jeden element danych. Ogólny
Bardziej szczegółowo.! $ Stos jest list z trzema operacjami: dodawanie elementów na wierzch stosu, zdejmowanie elementu z wierzchu stosu, sprawdzanie czy stos jest pusty.
!"! " #$%& '()#$$ &%$! #$ %$ &%$& &$&! %&'" )$$! *$$&%$! +,- +-.! $ Celem wiczenia jest zapoznanie studenta ze strukturami: lista, stos, drzewo oraz ich implementacja w jzyku ANSI C. Zrozumienie działania
Bardziej szczegółowoWysokość drzewa Głębokość węzła
Drzewa Drzewa Drzewo (ang. tree) zbiór węzłów powiązanych wskaźnikami, spójny i bez cykli. Drzewo posiada wyróżniony węzeł początkowy nazywany korzeniem (ang. root). Drzewo ukorzenione jest strukturą hierarchiczną.
Bardziej szczegółowoBazy danych. Plan wykładu. Podzapytania - wskazówki. Podzapytania po FROM. Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych.
Plan wykładu azy danych Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych. Dokoczenie SQL Zalenoci wielowartociowe zwarta posta normalna Dekompozycja do 4NF Przykład sprowadzanie do
Bardziej szczegółowoWstp. Warto przepływu to
177 Maksymalny przepływ Załoenia: sie przepływow (np. przepływ cieczy, prdu, danych w sieci itp.) bdziemy modelowa za pomoc grafów skierowanych łuki grafu odpowiadaj kanałom wierzchołki to miejsca połcze
Bardziej szczegółowoTemat: Struktury danych do reprezentacji grafów. Wybrane algorytmy grafowe.
Temat: Struktury danych do reprezentacji grafów. Wybrane algorytmy grafowe. Oznaczenia G = V, E - graf bez wag, gdzie V - zbiór wierzchołków, E- zbiór krawdzi V = n - liczba wierzchołków grafu G E = m
Bardziej szczegółowoTemat: Technika zachłanna. Przykłady zastosowania. Własno wyboru zachłannego i optymalnej podstruktury.
Temat: Technika zachłanna. Przykłady zastosowania. Własno wyboru zachłannego i optymalnej podstruktury. Algorytm zachłanny ( ang. greedy algorithm) wykonuje zawsze działanie, które wydaje si w danej chwili
Bardziej szczegółowoPrzykładowe B+ drzewo
Przykładowe B+ drzewo 3 8 1 3 7 8 12 Jak obliczyć rząd indeksu p Dane: rozmiar klucza V, rozmiar wskaźnika do bloku P, rozmiar bloku B, liczba rekordów w indeksowanym pliku danych r i liczba bloków pliku
Bardziej szczegółowoCLUSTERING II. Efektywne metody grupowania danych
CLUSTERING II Efektywne metody grupowania danych Plan wykładu Wstęp: Motywacja i zastosowania Metody grupowania danych Algorytmy oparte na podziałach (partitioning algorithms) PAM Ulepszanie: CLARA, CLARANS
Bardziej szczegółowoAlgorytmy i Struktury Danych
Algorytmy i Struktury Danych Kopce Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 11 Bożena Woźna-Szcześniak (AJD) Algorytmy i Struktury Danych Wykład 11 1 / 69 Plan wykładu
Bardziej szczegółowoDefinicja pliku kratowego
Pliki kratowe Definicja pliku kratowego Plik kratowy (ang grid file) jest strukturą wspierająca realizację zapytań wielowymiarowych Uporządkowanie rekordów, zawierających dane wielowymiarowe w pliku kratowym,
Bardziej szczegółowoZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2014/2015. Drzewa BST c.d., równoważenie drzew, kopce.
POLITECHNIKA WARSZAWSKA Instytut Automatyki i Robotyki ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 204/205 Język programowania: Środowisko programistyczne: C/C++ Qt Wykład 2 : Drzewa BST c.d., równoważenie
Bardziej szczegółowoWyk lad 7: Drzewa decyzyjne dla dużych zbiorów danych
Wyk lad 7: Drzewa decyzyjne dla dużych zbiorów danych Funkcja rekurencyjna buduj drzewo(u, dec, T): 1: if (kryterium stopu(u, dec) = true) then 2: T.etykieta = kategoria(u, dec); 3: return; 4: end if 5:
Bardziej szczegółowoWektor o pocztku i kocu odpowiednio w punktach. Prosta zawierajca punkty p i q: pq Półprosta zaczynajca si w punkcie p i zawierajca punkt q:.
Temat: Geometria obliczeniowa, cz I. Podstawowe algorytmy geometryczne. Problem sprawdzania przynalenoci punktu do wielokta. Problem otoczki wypukłej algorytmy Grahama, i Jarvisa. 1. Oznaczenia Punkty
Bardziej szczegółowoAlgorytmy zrandomizowane
Algorytmy zrandomizowane www.qed.pl/ai/nai2003 PLAN WYKŁADU Inne zadania optymalizacyjne grupowanie Generowanie liczb losowych Metody Monte Carlo i Las Vegas przykłady zastosowa Przeszukiwanie losowe metoda
Bardziej szczegółowo1) Grafy eulerowskie własnoci algorytmy. 2) Problem chiskiego listonosza
165 1) Grafy eulerowskie własnoci algorytmy 2) Problem chiskiego listonosza 166 Grafy eulerowskie Def. Graf (multigraf, niekoniecznie spójny) jest grafem eulerowskim, jeli zawiera cykl zawierajcy wszystkie
Bardziej szczegółowostopie szaro ci piksela ( x, y)
I. Wstp. Jednym z podstawowych zada analizy obrazu jest segmentacja. Jest to podział obrazu na obszary spełniajce pewne kryterium jednorodnoci. Jedn z najprostszych metod segmentacji obrazu jest progowanie.
Bardziej szczegółowo< K (2) = ( Adams, John ), P (2) = adres bloku 2 > < K (1) = ( Aaron, Ed ), P (1) = adres bloku 1 >
Typy indeksów Indeks jest zakładany na atrybucie relacji atrybucie indeksowym (ang. indexing field). Indeks zawiera wartości atrybutu indeksowego wraz ze wskaźnikami do wszystkich bloków dyskowych zawierających
Bardziej szczegółowoAlgorytmy i Struktury Danych, 9. ćwiczenia
Algorytmy i Struktury Danych, 9. ćwiczenia 206-2-09 Plan zajęć usuwanie z B-drzew join i split na 2-3-4 drzewach drzepce adresowanie otwarte w haszowaniu z analizą 2 B-drzewa definicja każdy węzeł ma następujące
Bardziej szczegółowoUniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Algorytmy i struktury danych Laboratorium 7. 2 Drzewa poszukiwań binarnych
Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Algorytmy i struktury danych Laboratorium Drzewa poszukiwań binarnych 1 Cel ćwiczenia Ćwiczenie ma na celu zapoznanie studentów
Bardziej szczegółowoWykład 2. Drzewa poszukiwań binarnych (BST)
Wykład 2 Drzewa poszukiwań binarnych (BST) 1 O czym będziemy mówić Definicja Operacje na drzewach BST: Search Minimum, Maximum Predecessor, Successor Insert, Delete Struktura losowo budowanych drzew BST
Bardziej szczegółowoAlgorytmy i struktury danych. Co dziś? Tytułem przypomnienia metoda dziel i zwyciężaj. Wykład VIII Elementarne techniki algorytmiczne
Algorytmy i struktury danych Wykład VIII Elementarne techniki algorytmiczne Co dziś? Algorytmy zachłanne (greedyalgorithms) 2 Tytułem przypomnienia metoda dziel i zwyciężaj. Problem można podzielić na
Bardziej szczegółowoDrzewo. Drzewo uporządkowane ma ponumerowanych (oznaczonych) następników. Drzewo uporządkowane składa się z węzłów, które zawierają następujące pola:
Drzewa Drzewa Drzewo (ang. tree) zbiór węzłów powiązanych wskaźnikami, spójny i bez cykli. Drzewo posiada wyróżniony węzeł początkowy nazywany korzeniem (ang. root). Drzewo ukorzenione jest strukturą hierarchiczną.
Bardziej szczegółowoPlan wykładu. Reguły asocjacyjne. Przykłady asocjacji. Reguły asocjacyjne. Jeli warunki to efekty. warunki efekty
Plan wykładu Reguły asocjacyjne Marcin S. Szczuka Wykład 6 Terminologia dla reguł asocjacyjnych. Ogólny algorytm znajdowania reguł. Wyszukiwanie czstych zbiorów. Konstruowanie reguł - APRIORI. Reguły asocjacyjne
Bardziej szczegółowoKolejka priorytetowa. Często rozważa się kolejki priorytetowe, w których poszukuje się elementu minimalnego zamiast maksymalnego.
Kolejki Kolejka priorytetowa Kolejka priorytetowa (ang. priority queue) to struktura danych pozwalająca efektywnie realizować następujące operacje na zbiorze dynamicznym, którego elementy pochodzą z określonego
Bardziej szczegółowoTworzenie bazy danych Biblioteka tworzenie tabel i powiza, manipulowanie danymi. Zadania do wykonani przed przystpieniem do pracy:
wiczenie 2 Tworzenie bazy danych Biblioteka tworzenie tabel i powiza, manipulowanie danymi. Cel wiczenia: Zapoznanie si ze sposobami konstruowania tabel, powiza pomidzy tabelami oraz metodami manipulowania
Bardziej szczegółowoAlgorytmy i struktury danych. Wykład 6 Tablice rozproszone cz. 2
Algorytmy i struktury danych Wykład 6 Tablice rozproszone cz. 2 Na poprzednim wykładzie Wiele problemów wymaga dynamicznych zbiorów danych, na których można wykonywać operacje: wstawiania (Insert) szukania
Bardziej szczegółowoTemat: Algorytmy zachłanne
Temat: Algorytmy zachłanne Algorytm zachłanny ( ang. greedy algorithm) wykonuje zawsze działanie, które wydaje si w danej chwili najkorzystniejsze. Wybiera zatem lokalnie optymaln moliwo w nadziei, e doprowadzi
Bardziej szczegółowoDrzewa poszukiwań binarnych
1 Cel ćwiczenia Algorytmy i struktury danych Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet ielonogórski Drzewa poszukiwań binarnych Ćwiczenie
Bardziej szczegółowoPlan wykładu. Klucz wyszukiwania. Pojęcie indeksu BAZY DANYCH. Pojęcie indeksu - rodzaje indeksów Metody implementacji indeksów.
Plan wykładu 2 BAZY DANYCH Wykład 4: Indeksy. Pojęcie indeksu - rodzaje indeksów Metody implementacji indeksów struktury statyczne struktury dynamiczne Małgorzata Krętowska Wydział Informatyki PB Pojęcie
Bardziej szczegółowoR-drzewa. Realizowane funkcje: Struktura węzłów R-drzewa
R-drzewa R-drzewa są dynamicznymi strukturami danych służącymi do wyszukiwania obiektów wielowymiarowych (niepunktowych!!!) w przestrzeni wielowymiarowej. W R-drzewach obiekty wielowymiarowe są aproksymowane
Bardziej szczegółowoPodstawy Informatyki. Metody dostępu do danych
Podstawy Informatyki c.d. alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu 1 Bazy danych Struktury danych Średni czas odszukania rekordu Drzewa binarne w pamięci dyskowej 2 Sformułowanie
Bardziej szczegółowoProblemy optymalizacyjne - zastosowania
Problemy optymalizacyjne - zastosowania www.qed.pl/ai/nai2003 PLAN WYKŁADU Zło ono obliczeniowa - przypomnienie Problemy NP-zupełne klika jest NP-trudna inne problemy NP-trudne Inne zadania optymalizacyjne
Bardziej szczegółowoCLUSTERING. Metody grupowania danych
CLUSTERING Metody grupowania danych Plan wykładu Wprowadzenie Dziedziny zastosowania Co to jest problem klastrowania? Problem wyszukiwania optymalnych klastrów Metody generowania: k centroidów (k - means
Bardziej szczegółowoWykład 6. Drzewa poszukiwań binarnych (BST)
Wykład 6 Drzewa poszukiwań binarnych (BST) 1 O czym będziemy mówić Definicja Operacje na drzewach BST: Search Minimum, Maximum Predecessor, Successor Insert, Delete Struktura losowo budowanych drzew BST
Bardziej szczegółowoZadania do wykonaj przed przyst!pieniem do pracy:
wiczenie 3 Tworzenie bazy danych Biblioteka tworzenie kwerend, formularzy Cel wiczenia: Zapoznanie si ze sposobami konstruowania formularzy operujcych na danych z tabel oraz metodami tworzenia kwerend
Bardziej szczegółowoDrzewa ćwiartek (ang. Quadtree) i R-drzewa (ang. R-tree)
Drzewa ćwiartek (ang. Quadtree) i R-drzewa (ang. R-tree) Drzewa ćwiartek Quadtree Drzewa ćwiartek rozległa klasa hierarchicznych struktur danych, których wspólną cechą jest rekurencyjna dekompozycja przestrzeni
Bardziej szczegółowoZadanie 1 Przygotuj algorytm programu - sortowanie przez wstawianie.
Sortowanie Dane wejściowe: ciąg n-liczb (kluczy) (a 1, a 2, a 3,..., a n 1, a n ) Dane wyjściowe: permutacja ciągu wejściowego (a 1, a 2, a 3,..., a n 1, a n) taka, że a 1 a 2 a 3... a n 1 a n. Będziemy
Bardziej szczegółowoLuty 2001 Algorytmy (4) 2000/2001
Mając dany zbiór elementów, chcemy znaleźć w nim element największy (maksimum), bądź najmniejszy (minimum). We wszystkich naturalnych metodach znajdywania najmniejszego i największego elementu obecne jest
Bardziej szczegółowoSYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska
SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska DRZEWO REGRESYJNE Sposób konstrukcji i przycinania
Bardziej szczegółowooraz spełnia warunki: (*) dla wszystkich wierzchołków
Temat: Problem najtaszego przepływu. Definicja problemu, przykład zastosowania. Algorytm Kleina. Algorytm Busackera Gowena. 1. Definicja problemu najtaszego przepływu Wejcie: Graf zorientowany G =
Bardziej szczegółowoSposoby przekazywania parametrów w metodach.
Temat: Definiowanie i wywoływanie metod. Zmienne lokalne w metodach. Sposoby przekazywania parametrów w metodach. Pojcia klasy i obiektu wprowadzenie. 1. Definiowanie i wywoływanie metod W dotychczas omawianych
Bardziej szczegółowoBazy danych Podstawy teoretyczne
Pojcia podstawowe Baza Danych jest to zbiór danych o okrelonej strukturze zapisany w nieulotnej pamici, mogcy zaspokoi potrzeby wielu u!ytkowników korzystajcych z niego w sposóbs selektywny w dogodnym
Bardziej szczegółowoAlgorytmy zwiazane z gramatykami bezkontekstowymi
Algorytmy zwiazane z gramatykami bezkontekstowymi Rozpoznawanie j zyków bezkontekstowych Problem rozpoznawania j zyka L polega na sprawdzaniu przynale»no±ci sªowa wej±ciowego x do L. Zakªadamy,»e j zyk
Bardziej szczegółowoBazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)
Plan wykładu Bazy danych Wykład 2: Diagramy zwizków encji (ERD) Diagramy zwizków encji elementy ERD licznoci zwizków podklasy klucze zbiory słabych encji Małgorzata Krtowska Katedra Oprogramowania e-mail:
Bardziej szczegółowoALGORYTMY I STRUKTURY DANYCH
ALGORYTMY I STRUKTURY DANYCH Temat : Drzewa zrównoważone, sortowanie drzewiaste Wykładowca: dr inż. Zbigniew TARAPATA e-mail: Zbigniew.Tarapata@isi.wat.edu.pl http://www.tarapata.strefa.pl/p_algorytmy_i_struktury_danych/
Bardziej szczegółowo1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja. 2. Schemat blokowy przedstawia algorytm obliczania
1. Nagłówek funkcji: int funkcja(void); wskazuje na to, że ta funkcja nie ma parametru i zwraca wartość na zewnątrz. nie ma parametru i nie zwraca wartości na zewnątrz. ma parametr o nazwie void i zwraca
Bardziej szczegółowoAlgorytmy i. Wykład 5: Drzewa. Dr inż. Paweł Kasprowski
Algorytmy i struktury danych Wykład 5: Drzewa Dr inż. Paweł Kasprowski pawel@kasprowski.pl Drzewa Struktury przechowywania danych podobne do list ale z innymi zasadami wskazywania następników Szczególny
Bardziej szczegółowoPRÓBNY EGZAMIN MATURALNY Z INFORMATYKI
Wpisuje zdajcy przed rozpoczciem pracy PESEL ZDAJCEGO Miejsce na nalepk z kodem szkoły PRÓBNY EGZAMIN MATURALNY Z INFORMATYKI Arkusz II Instrukcja dla zdajcego Czas pracy 150 minut 1. Prosz sprawdzi, czy
Bardziej szczegółowoPrzykłady wyrae uywanych w kwerendach i filtrach
Przykłady wyrae uywanych w kwerendach i filtrach Przykłady kryteriów stosowanych przy pobieraniu rekordów Zakresy wartoci (>, =, 234 Dla pola Ilo; wywietla liczby wiksze
Bardziej szczegółowoDrzewa binarne. Drzewo binarne to dowolny obiekt powstały zgodnie z regułami: jest drzewem binarnym Jeśli T 0. jest drzewem binarnym Np.
Drzewa binarne Drzewo binarne to dowolny obiekt powstały zgodnie z regułami: jest drzewem binarnym Jeśli T 0 i T 1 są drzewami binarnymi to T 0 T 1 jest drzewem binarnym Np. ( ) ( ( )) Wielkość drzewa
Bardziej szczegółowoKLUCZ PUNKTOWANIA ODPOWIEDZI
Egzamin maturalny maj 009 MATEMATYKA POZIOM PODSTAWOWY KLUCZ PUNKTOWANIA ODPOWIEDZI Zadanie 1. Matematyka poziom podstawowy Wyznaczanie wartoci funkcji dla danych argumentów i jej miejsca zerowego. Zdajcy
Bardziej szczegółowoI Powiatowy Konkurs Matematyka, Fizyka i Informatyka w Technice Etap finałowy 10 kwietnia 2013 grupa elektryczno-elektroniczna
I Powiatowy Konkurs Matematyka, Fizyka i Informatyka w Technice Etap finałowy 10 kwietnia 2013 grupa elektryczno-elektroniczna (imi i nazwisko uczestnika) (nazwa szkoły) Arkusz zawiera 6 zada. Zadania
Bardziej szczegółowoStrategia "dziel i zwyciężaj"
Strategia "dziel i zwyciężaj" W tej metodzie problem dzielony jest na kilka mniejszych podproblemów podobnych do początkowego problemu. Problemy te rozwiązywane są rekurencyjnie, a następnie rozwiązania
Bardziej szczegółowoTemat: Problem najkrótszych cieek w grafach waonych, cz. I: Algorytmy typu label - setting.
Temat: Problem najkrótszych cieek w grafach waonych, cz. I: Algorytmy typu label - setting.. Oznaczenia i załoenia Oznaczenia G = - graf skierowany z funkcj wagi s wierzchołek ródłowy t wierzchołek
Bardziej szczegółowoPorządek symetryczny: right(x)
Porządek symetryczny: x lef t(x) right(x) Własność drzewa BST: W drzewach BST mamy porządek symetryczny. Dla każdego węzła x spełniony jest warunek: jeżeli węzeł y leży w lewym poddrzewie x, to key(y)
Bardziej szczegółowoBazy danych. Plan wykładu. Dekompozycja relacji. Anomalie. Wykład 5: Projektowanie relacyjnych schematów baz danych. SQL - funkcje grupujce
Plan wykładu Bazy danych Wykład 5: Projektowanie relacyjnych schematów baz danych. SQL - funkcje grupujce Małgorzata Krtowska Katedra Oprogramowania e-mail: mmac@ii.pb.bialystok.pl Proces dobrego projektowania
Bardziej szczegółowoProblem decyzyjny naley do klasy NP. (Polynomial), jeeli moe by rozwizany w czasie conajwyej wielomianowym przez algorytm A dla DTM.
WYKŁAD : Teoria NP-zupełnoci. Problem decyzyjny naley do klasy P (Polynomial), jeeli moe by rozwizany w czasie conajwyej wielomianowym przez algorytm A dla DTM. (przynaleno ta jest zachowana równie dla
Bardziej szczegółowoPrzypomnij sobie krótki wstęp do teorii grafów przedstawiony na początku semestru.
Spis treści 1 Drzewa 1.1 Drzewa binarne 1.1.1 Zadanie 1.1.2 Drzewo BST (Binary Search Tree) 1.1.2.1 Zadanie 1 1.1.2.2 Zadanie 2 1.1.2.3 Zadanie 3 1.1.2.4 Usuwanie węzła w drzewie BST 1.1.2.5 Zadanie 4
Bardziej szczegółowoODPOWIEDZI I SCHEMAT PUNKTOWANIA ZESTAW NR 2 POZIOM PODSTAWOWY. 1. x y x y
Nr zadania Nr czynnoci Przykadowy zestaw zada nr z matematyki ODPOWIEDZI I SCHEMAT PUNKTOWANIA ZESTAW NR POZIOM PODSTAWOWY Etapy rozwizania zadania. Podanie dziedziny funkcji f: 6, 8.. Podanie wszystkich
Bardziej szczegółowoBazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)
Plan wykładu Bazy danych Wykład 2: Diagramy zwizków encji (ERD) Diagramy zwizków encji elementy ERD licznoci zwizków podklasy klucze zbiory słabych encji Małgorzata Krtowska Katedra Oprogramowania e-mail:
Bardziej szczegółoworysunek. Standardowym Przybornika Elips.
1. Na pocztek otwórz Corela 2. Kliknij na ikonie Nowy rysunek. Jeli program został wczeniej przez Ciebie otwarty i zamknłe tylko poprzedni plik, nacinij na ikon Nowy na pasku Standardowym - ukae si pusta
Bardziej szczegółowoB jest globalnym pokryciem zbioru {d} wtedy i tylko wtedy, gdy {d} zależy od B i nie istnieje B T takie, że {d} zależy od B ;
Algorytm LEM1 Oznaczenia i definicje: U - uniwersum, tj. zbiór obiektów; A - zbiór atrybutów warunkowych; d - atrybut decyzyjny; IND(B) = {(x, y) U U : a B a(x) = a(y)} - relacja nierozróżnialności, tj.
Bardziej szczegółowoRekurencja. Dla rozwiązania danego problemu, algorytm wywołuje sam siebie przy rozwiązywaniu podobnych podproblemów. Przykład: silnia: n! = n(n-1)!
Rekurencja Dla rozwiązania danego problemu, algorytm wywołuje sam siebie przy rozwiązywaniu podobnych podproblemów. Przykład: silnia: n! = n(n-1)! Pseudokod: silnia(n): jeżeli n == 0 silnia = 1 w przeciwnym
Bardziej szczegółowoAlgorytmy i Struktury Danych, 2. ćwiczenia
Algorytmy i Struktury Danych, 2. ćwiczenia 2017-10-13 Spis treści 1 Optymalne sortowanie 5 ciu elementów 1 2 Sortowanie metodą Shella 2 3 Przesunięcie cykliczne tablicy 3 4 Scalanie w miejscu dla ciągów
Bardziej szczegółowoWykład 3. Metoda dziel i zwyciężaj
Wykład 3 Metoda dziel i zwyciężaj 1 Wprowadzenie Technika konstrukcji algorytmów dziel i zwyciężaj. przykładowe problemy: Wypełnianie planszy Poszukiwanie (binarne) Sortowanie (sortowanie przez łączenie
Bardziej szczegółowoDrzewa poszukiwań binarnych
1 Drzewa poszukiwań binarnych Kacper Pawłowski Streszczenie W tej pracy przedstawię zagadnienia związane z drzewami poszukiwań binarnych. Przytoczę poszczególne operacje na tej strukturze danych oraz ich
Bardziej szczegółowoPodstawowe algorytmy i ich implementacje w C. Wykład 9
Wstęp do programowania 1 Podstawowe algorytmy i ich implementacje w C Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 9 Element minimalny i maksymalny zbioru Element minimalny
Bardziej szczegółowo5. Kliknij czarny trójkt umieszczony w prawym dolnym rogu ikony narzdzia Wypełnienie i - z rozsuwanej palety - wybierz pozycj Wypełnienie jednolite.
1. Otwórz program CorelDraw i kliknij Nowy rysunek. Jeli program został otwarty ju wczeniej, nacinij ikonk Nowy na pasku Standardowym - pojawi si pusta kartka nowego rysunku. Jeli ju wczeniej zaczłe prac
Bardziej szczegółowoAlgorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne
Algorytmy i struktury danych Drzewa: BST, kopce Letnie Warsztaty Matematyczno-Informatyczne Drzewa: BST, kopce Definicja drzewa Drzewo (ang. tree) to nieskierowany, acykliczny, spójny graf. Drzewo może
Bardziej szczegółowoSortowanie bąbelkowe
1/98 Sortowanie bąbelkowe (Bubble sort) prosty i nieefektywny algorytm sortowania wielokrotnie przeglądamy listę elementów, porównując dwa sąsiadujące i zamieniając je miejscami, jeśli znajdują się w złym
Bardziej szczegółowoModelowanie hierarchicznych struktur w relacyjnych bazach danych
Modelowanie hierarchicznych struktur w relacyjnych bazach danych Wiktor Warmus (wiktorwarmus@gmail.com) Kamil Witecki (kamil@witecki.net.pl) 5 maja 2010 Motywacje Teoria relacyjnych baz danych Do czego
Bardziej szczegółowoIV Powiatowy Konkurs Matematyka, Fizyka i Informatyka w Technice Etap finałowy 1 kwietnia 2016
IV Powiatowy Konkurs Matematyka, Fizyka i Informatyka w Technice Etap finałowy 1 kwietnia 2016 (imi i nazwisko uczestnika) (nazwa szkoły) Arkusz zawiera 8 zada. Zadania 1 i 2 bd oceniane dla kadego uczestnika,
Bardziej szczegółowoData Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu
Data Mining Wykład 9 Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster Plan wykładu Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne Sformułowanie problemu
Bardziej szczegółowoPodstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno
Instrukcja laboratoryjna 5 Podstawy programowania 2 Temat: Drzewa binarne Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny Drzewa są jedną z częściej wykorzystywanych struktur danych. Reprezentują
Bardziej szczegółowoWprowadzenie do algorytmów. START
1 / 15 ALGORYMIKA 2 / 15 ALGORYMIKA Wprowadzenie do algorytmów. SAR 1. Podstawowe okrelenia. Algorytmika dział informatyki, zajmujcy si rónymi aspektami tworzenia i analizowania algorytmów. we: a,b,c delta:=b
Bardziej szczegółowoAlgorytmy i Struktury Danych. Co dziś? Drzewo decyzyjne. Wykład IV Sortowania cd. Elementarne struktury danych
Algorytmy i Struktury Danych Wykład IV Sortowania cd. Elementarne struktury danych 1 Co dziś? Dolna granica sortowań Mediany i statystyki pozycyjne Warstwa implementacji Warstwa abstrakcji #tablice #listy
Bardziej szczegółowoRóniczka. f x. V Vx. Zadanie 4. Znale maksymalny błd bezwzgldny i wzgldny powstały przy obliczaniu objtoci stoka, jeli promie podstawy wynosi
Róniczka Wraenie d nazwa si róniczk pierwszego rzdu czci liniow przrostu wartoci unkcji Zastosowanie róniczki do oblicze przblionch: Zadanie Za pomoc róniczki oblicz przblion warto liczb Wkorzstam wzór
Bardziej szczegółowoGranular Computing 9999 pages 15 METODY SZTUCZNEJ INTELIGENCJI - PROJEKTY
Granular Computing 9999 pages 15 METODY SZTUCZNEJ INTELIGENCJI - PROJEKTY PB 2 PB 1 Projekt z grupowania danych - Rough k-medoids Liczba osób realizuj cych projekt: 1 osoba 1. Wczytanie danych w formatach
Bardziej szczegółowoRekurencyjne struktury danych
Andrzej Jastrz bski Akademia ETI Dynamiczny przydziaª pami ci Pami, która jest przydzielana na pocz tku dziaªania procesu to: pami programu czyli instrukcje programu pami statyczna zwi zana ze zmiennymi
Bardziej szczegółowoWybrane algorytmy tablicowe
Wybrane algorytmy tablicowe Algorytmy i struktury danych Wykład 2. Rok akademicki: 2009/2010 Sortowanie przez wybieranie for (int i = 0; i < liczby.length - 1; i++) k = i; for (int j = i; j < liczby.length;
Bardziej szczegółowoAnaliza algorytmów zadania podstawowe
Analiza algorytmów zadania podstawowe Zadanie 1 Zliczanie Zliczaj(n) 1 r 0 2 for i 1 to n 1 3 do for j i + 1 to n 4 do for k 1 to j 5 do r r + 1 6 return r 0 Jaka wartość zostanie zwrócona przez powyższą
Bardziej szczegółowoSortowanie przez scalanie
Sortowanie przez scalanie Wykład 2 12 marca 2019 (Wykład 2) Sortowanie przez scalanie 12 marca 2019 1 / 17 Outline 1 Metoda dziel i zwyciężaj 2 Scalanie Niezmiennik pętli - poprawność algorytmu 3 Sortowanie
Bardziej szczegółowoProgramowanie dynamiczne cz. 2
Programowanie dynamiczne cz. 2 Wykład 7 16 kwietnia 2019 (Wykład 7) Programowanie dynamiczne cz. 2 16 kwietnia 2019 1 / 19 Outline 1 Mnożenie ciągu macierzy Konstruowanie optymalnego rozwiązania 2 Podstawy
Bardziej szczegółowoCash flow projektu zakładajcego posiadanie własnego magazynu oraz posiłkowanie si magazynem obcym w przypadku sezonowych zwyek
Optymalizacja zaangaowania kapitałowego 4.01.2005 r. w decyzjach typu make or buy. Magazyn czy obcy cz. 2. Cash flow projektu zakładajcego posiadanie własnego magazynu oraz posiłkowanie si magazynem obcym
Bardziej szczegółowoStruktury Danych i Złożoność Obliczeniowa
Struktury Danych i Złożoność Obliczeniowa Zajęcia 3 Struktury drzewiaste drzewo binarne szczególny przypadek drzewa, które jest szczególnym przypadkiem grafu skierowanego, stopień każdego wierzchołka jest
Bardziej szczegółowoWYKŁAD 4 PLAN WYKŁADU. Sieci neuronowe: Algorytmy uczenia & Dalsze zastosowania. Metody uczenia sieci: Zastosowania
WYKŁAD 4 Sieci neuronowe: Algorytmy uczenia & Dalsze zastosowania PLAN WYKŁADU Metody uczenia sieci: Uczenie perceptronu Propagacja wsteczna Zastosowania Sterowanie (powtórzenie) Kompresja obrazu Rozpoznawanie
Bardziej szczegółowoCorelDraw rysunek. Standardowym Otwórz, Elipsa Ctrl. Rozmieszczenie > Transformacja. Transformacja. Rozmiar. Nieproporcjonalnie. 125 Zastosuj.
1. Otwórz program CorelDraw i kliknij Nowy rysunek. Jeli program został otwarty ju wczeniej, nacinij ikonk Nowy na pasku Standardowym pojawi si pusta kartka nowego rysunku. Jeli ju wczeniej zaczłe prac
Bardziej szczegółowoSystem plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Przydział miejsca na dysku Przydział ciągły (ang. contiguous allocation) cały plik zajmuje ciąg kolejnych bloków Przydział listowy (łańcuchowy, ang. linked
Bardziej szczegółowoSystem plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Plan wykładu Przydział miejsca na dysku Zarządzanie wolną przestrzenią Implementacja katalogu Przechowywanie podręczne Integralność systemu plików Semantyka
Bardziej szczegółowoSystem plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Przydział miejsca na dysku Zarządzanie wolną przestrzenią Implementacja katalogu Przechowywanie podręczne Integralność systemu plików Semantyka spójności
Bardziej szczegółowo