STRUKTURY DANYCH. dane wej±ciowe problemu, ewentualne dane po±rednie, dane wynikowe (czyli rozwi zanie problemu).

Wielkość: px
Rozpocząć pokaz od strony:

Download "STRUKTURY DANYCH. dane wej±ciowe problemu, ewentualne dane po±rednie, dane wynikowe (czyli rozwi zanie problemu)."

Transkrypt

1 STRUKTURY DANYCH Jak ju» zostaªo wspomniane, do rozwi zania ró»nego rodzaju problemów sªu» odpowiednie algorytmy (które implementujemy przy pomocy ró»nego rodzaju j zyków programowania wy»szego rz du). Do pracy algorytmu jak dla ka»dego programu komputerowego niezb dne s struktury danych, przechowuj ce niezb dne informacje (dane), czyli: dane wej±ciowe problemu, ewentualne dane po±rednie, dane wynikowe (czyli rozwi zanie problemu). W zale»no±ci od charakterystyki rozwi zywanego problemu oraz od sposobu dziaªania danego algorytmu, struktury te s bardziej lub mniej skomplikowane. Najprostsze struktury to tablica i lista.

2 Tablic okre±lamy zwarty obszar pami ci, gdzie ka»da komórka przechowuje informacje okre±lonego typu i do ka»dej z nich jest bezpo±redni dost p poprzez jej indeks. Zwró my uwag,»e ka»da komórka tablicy mo»e by pojedyncz warto±ci (np. warto±ci danego elementu w Problemie Podziaªu) lub bardziej skomplikowan struktur (np. polem dwuelementowym zawieraj cym rozmiar i warto± konkretnego elementu w Problemie Komiwoja»era, a nawet rozbudowanym zestawem danych osobowych, skªadaj cym si z wielu pól ró»nego typu ªa«cuchów znaków, liczb, dat, ci gów cyfr o okre±lonej strukturze, itp.). Zaªó»my,»e w ogólno±ci tablica zawiera n elementów (komórek). Jaka jest efektywno± podstawowych operacji na takiej strukturze?

3 Dost p do okre±lonego elementu: natychmiastowy, ze wzgl du na indeksowanie ka»dej komórki tablicy O(1). w najgorszym wypadku Wyszukanie elementu o okre±lonej warto±ci: b dziemy musieli odczyta wszystkie n komórek O(n). Wstawienie nowego elementu na okre±lon pozycj : wstawienie nowego elementu na koniec tablicy wymaga po prostu powi kszenia rozmiaru tablicy o 1 i wpisania warto±ci do ostatniej komórki (zatem jest to staªa liczba operacji, niezale»na od liczby elementów, czyli O(1)), jednak wstawienie nowego elementu w ±rodek tablicy wymaga powi kszenia rozmiaru tablicy o 1 oraz przesuni cia wszystkich elementów le» cych na prawo od wstawianego o 1 pozycj w prawo, czyli w najgorszym wypadku (wstawienie elementu na pierwsz pozycj ): staªa liczba operacji zwi kszania rozmiaru tablicy + n przesuni + 1 zapisanie = O(1) + O(n) + O(1) = O(n). Usuni cie elementu: analogicznie do wstawiania, w najgorszym wypadku (usuni cie pierwszego elementu) trzeba przesun n 1 elementów o 1 pozycj w lewo (n 1 operacji) i zmniejszy rozmiar tablicy o 1 (staªa liczba operacji) O(n).

4 TAB: [1] [2] [3] [4] [5] Ś N I E G

5 TAB: [1] [2] [3] [4] [5] Ś N I E G Odczyt: TAB[2]?

6 TAB: [1] [2] [3] [4] [5] Ś N I E G Odczyt: TAB[2] = N

7 TAB: [1] [2] [3] [4] [5] Ś N I E G Wyszukanie: TAB[i] = N?

8 TAB: [1] [2] [3] [4] [5] Ś N I E G Wyszukanie: TAB[i] = N?

9 TAB: [1] [2] [3] [4] [5] Ś N I E G Wyszukanie: TAB[i] = N?

10 TAB: [1] [2] [3] [4] [5] Ś N I E G Wyszukanie: TAB[i] = N? i = 2.

11 TAB: [1] [2] [3] [4] [5] Ś N I E G Usuwanie: TAB[2]

12 TAB: [1] [2] [3] [4] [5] Ś I E G Usuwanie: TAB[2]

13 TAB: [1] [2] [3] [4] [5] Ś I E G Usuwanie: TAB[2]

14 TAB: [1] [2] [3] [4] [5] Ś I E G Usuwanie: TAB[2]

15 TAB: [1] [2] [3] [4] Ś I E G Usuwanie: TAB[2]

16 TAB: [1] [2] [3] [4] Ś I E G Wstawianie: TAB[2] = C

17 TAB: [1] [2] [3] [4] [5] Ś I E G Wstawianie: TAB[2] = C

18 TAB: [1] [2] [3] [4] [5] Ś I E G Wstawianie: TAB[2] = C

19 TAB: [1] [2] [3] [4] [5] Ś I E G Wstawianie: TAB[2] = C

20 TAB: [1] [2] [3] [4] [5] Ś I E G Wstawianie: TAB[2] = C

21 TAB: [1] [2] [3] [4] [5] Ś C I E G Wstawianie: TAB[2] = C

22 Lista jest to struktura wykorzystuj ca wska¹niki, gdzie ka»da komórka skªada si z dwóch pól: pola danych (mog cego by jak w przypadku tablicy rozbudowan struktur ) oraz wska¹nika na nast pny element. Ponadto, lista musi mie (co najmniej) jedn wyszczególnion komórk zawieraj c wyª cznie wska¹nik na pierwszy element, tzw. gªow. W porównaniu do tablicy, lista posiada t zalet,»e nie musi by zwartym obszarem pami ci. Jakie s zatem koszty takiego rozwi zania?

23 Dost p do elementu: je»eli element jest umieszczony na ko«cu listy, to aby do niego dotrze, trzeba przejrze wszystkie pozostaªe n 1 elementów O(n). Wyszukanie elementu: jak wy»ej O(n). Wstawienie elementu: nale»y utworzy now komórk O(1), wypeªni warto± pola danych O(1), pole wska¹nika wypeªni warto±ci gªowy O(1), a warto± gªowy wypeªni warto±ci wskazuj c na nowy element O(1) caªkowity czas omawianej operacji wynosi zatem O(1). Usuni cie elementu: warto± wska¹nika elementu poprzedzaj cego nale»y wypeªni warto±ci wskazuj c na element nast pny O(n) (trzeba ten wska- ¹nik znale¹!) i usun z pami ci dany element O(1) O(n).

24 LST: T U J A

25 LST: T U J A

26 LST: T U J A Odczyt: LST[3]?

27 LST: T U J A Odczyt: LST[3]?

28 LST: T U J A Odczyt: LST[3]?

29 LST: T U J A Odczyt: LST[3]?

30 LST: T U J A Odczyt: LST[3] = J

31 LST: T U J A Wyszukanie: LST[i] = J?

32 LST: T U J A Wyszukanie: LST[i] = J?

33 LST: T U J A Wyszukanie: LST[i] = J?

34 LST: T U J A Wyszukanie: LST[i] = J? i = 3.

35 LST: T U J A Usuwanie: LST[3]

36 LST: T U J A Usuwanie: LST[3]

37 LST: T U J A Usuwanie: LST[3]

38 LST: T U J A Usuwanie: LST[3]

39 LST: T U J A Usuwanie: LST[3]

40 LST: T U A Usuwanie: LST[3]

41 LST: T U A Wstawianie: LST[1] = B

42 LST: T U A B Wstawianie: LST[1] = B

43 LST: T U A B Wstawianie: LST[1] = B

44 LST: T U A B Wstawianie: LST[1] = B

45 LST: B T U A Wstawianie: LST[1] = B

46 Istniej te» bardziej zaawansowane postaci list: Lista dwukierunkowa ka»dy element, oprócz warto±ci i wska¹nika na nast pny element zawiera te» wska¹nik na element poprzedzaj cy, a oprócz gªowy zawiera te» (cho nie jest to konieczne) tzw. ogon, czyli wska¹nik na ostatni element struktury. Takie rozwi zanie skraca operacje wyszukiwania elementu (a co za tym idzie wstawiania i usuwania) w najgorszym wypadku o poªow, jednak z punktu widzenia efektywno±ci to nadal jest zªo»ono± tego samego rz du (O(n/2) = O(n)). Lista cykliczna wska¹nik ostatniego elementu wskazuje na pierwszy element.

47 Lista dwukierunkowa: K O T Lista dwukierunkowa cykliczna: K O T

48 Lista smoorganizuj ca si (posortowana) elementy w strukturze s uporz dkowane niemalej co lub nierosn co (wzgl dem warto±ci pól danych). Ró»nica w stosunku do standardowej listy dotyczy operacji dodawania elementu nale»y utworzy now komórk O(1), wypeªni warto± pola danych O(1), pole wska¹nika wypeªni warto±ci wskazuj c na element, który ma by nast pnikiem elementu wstawianego (trzeba znale¹ warto± tego wska¹nika, wyszukuj c element pierwotnie go poprzedzaj cy O(n)), pole wska¹nika elementu poprzedzaj cego wypeªni warto±ci wskazuj c na nowy element O(1) O(n). Korzy±ci pojawiaj si w niektórych szczególnych sytuacjach (gdy np. interesuj nas gªównie maksymalne / minimalne elementy). Zwró my uwag,»e ide listy mo»na zaimplementowa przy pomocy tablicy.

49 Realizacja listy za pomocą tablicy: [1] [2] [3] [4] [5] [6] Ś N I E Ć

50 Z kolei poni»ej zaprezentowane struktury mo»na zaimplementowa zarówno za pomoc tablicy, jak i listy.

51 Kolejka (bufor) jest struktur typu FIFO (ang. First In First Out), w której odczyt nast puje tylko z pierwszej pozycji, a wstawienie nowego elementu mo»e nast pi tylko na koniec struktury (za ostatni element). Zatem dost p (pobranie) oraz wstawienie nowego elementu zajmuje O(1) czasu, natomiast wyszukanie i usuni cie konkretnego elementu O(n).

52 Stos jest struktur typu LIFO (ang. Last In First Out), czyli tak, w której dost p (bezpo±redni) jest tylko do pierwszego elementu, a dodanie nowego nast puje przed pierwszy (na pierwsz pozycj ). Zatem tak jak w przypadku kolejki zªo»ono± operacji dost pu (pobrania) oraz dodania elementu wynosi O(1), natomiast dla wyszukania i usuni cia konkretnego elementu to O(n).

53 Kolejka: WE WY Stos: WE WY

54 Powy»ej opisane struktury mo»na okre±li jako liniowe i jak zostaªo to przeanalizowane, ka»da z nich posiada okre±lone wady i zalety. Generalnie mo»na stwierdzi,»e w powy»szych strukturach niektóre podstawowe operacje mo»na wykona w czasie O(1) ale inne w czasie O(n). Czy mo»na opracowa struktury, w których ka»d z analizowanych operacji b dzie mo»na wykona w czasie mniejszym ni» O(n)?

55 Rozwa»my struktur inn ni» liniow struktur drzewa. Ogóln denicj drzewa jako szczególnego typu grafu podamy pó¹niej, przy okazji omawiania teorii grafów. Obecnie opiszemy pewien szczególny typ drzewa drzewa ukorzenionego. Drzewo ukorzenione jest struktur hierarchiczn, tzn. ka»dy element posiada element(y) podrz dny(e) i/lub element nadrz dny. Element nadrz dny nazywa si rodzicem, a podrz dny potomkiem. Wymogiem drzewa jest to,»e ka»dy element mo»e posiada co najwy»ej jednego rodzica i (w ogólno±ci) dowoln liczb potomków ( 0). W drzewie wyró»niony jest element zwany korzeniem, który nie posiada rodzica (istnieje dokªadnie jeden taki element). Z kolei elementy nie posiadaj ce potomków zwane s li±ciami.

56 Drzewo korzeń rodzic węzła x x potomek węzła x liście

57 Szczególnym przypadkiem drzewa ukorzenionego jestdrzewo binarne, które charakteryzuje si m.in. tym,»e ka»dy element (nie b d cy li±ciem) posiada co najwy»ej dwóch potomków. Policzmy liczb poziomów, k, drzewa binarnego peªnego, tzn. takiego,»e: ka»dy element z wyj tkiem li±ci posiada dokªadnie 2 potomków, li±cie znajduj si tylko na ostatnim poziomie.

58 Drzewo binarne pełne [1] [2] [3] [4] [5] [6] [7] k = 4 poziomy [8] [9] [10] [11] [12] [13] [14] [15] n = 15 elementów

59 Wychodz c od spostrze»enia,»e w ka»dym kolejnym poziomie drzewa jest dwa razy wi cej elementów ni» w poprzednim, liczb wszystkich elementów mo»na wyznaczy jako sum nast. ci gu: k 1 = n. Korzystaj c ze wzoru na sum ci gu: a 0 + a 0 q + a 0 q a 0 q n 1 = a 0 1 q n 1 q, podstawiaj c a 0 = 1 oraz q = 2 otrzymamy: 2 k 1 = n.

60 Korzystaj c teraz z denicji logarytmu otrzymamy: a zatem k = O(log n). k = log 2 (n + 1),

61 Szczególnym przypadkiem drzewa binarnego jest kopiec, czyli takie drzewo binarne (prawie) peªne, w którym warto± rodzica jest zawsze nie mniejsza (nie wi ksza) od obu potomków (w przypadku elementu n/2 i nieparzystej liczby elementów od jedynego potomka). Dzi ki temu w korzeniu mamy zawsze element maksymalny (minimalny).

62 Kopiec zbudowany z n = 10 elementów: {8, 3, 1, 5, 6, 9, 2, 12, 7, 4} 12 [1] element maksymalny [2] 9 8 [3] 8 max {1, 2} [4] [5] [6] [7] [8] [9] [10] element n/2

63 Dost p do elementu: w kopcu mamy dost p tylko do korzenia O(1). Usuni cie (pobranie) elementu: procedura pobrania (pierwszego) elementu wymaga, po odczytaniu go z korzenia, przywrócenia wªa±ciwo±ci kopca. Polega to na tym,»e ostatni element ze struktury wstawiamy do korzenia (w miejsce pobranego elementu) i sukcesywnie zamieniamy go z wi kszym z potomków dopóki ten potomek jest wi kszy od zamienianego elementu. Zatem w najgorszym wypadku wykonamyo(log n) takich zamian, co stanowi zªo»ono± obliczeniow caªej procedury. Wstawienie elementu: nowy element wstawiamy na koniec struktury i zamieniamy go z rodzicem dopóki rodzic jest mniejszy od wstawionego elementu O(log n). Bior c pod uwag powy»sze, utworzenie poprawnego kopca ze zbioru n losowych warto±ci sprowadza si do n-krotnego wykonania operacji wstawienia elementu O(n log n).

64 Usunięcie elementu z kopca: 12 [1] [2] 9 8 [3] [4] [5] [6] [7] [8] [9] [10] 3 6 4

65 Usunięcie elementu z kopca: 12 [1] [2] 9 8 [3] [4] [5] [6] [7] [8] [9] [10] 3 6 4

66 Usunięcie elementu z kopca: [1] [2] 9 8 [3] [4] [5] [6] [7] [8] [9] [10] 3 6 4

67 Usunięcie elementu z kopca: 4 [1] [2] 9 8 [3] [4] [5] [6] [7] [8] [9] 3 6

68 Usunięcie elementu z kopca: 4 [1] [2] 9 8 [3] [4] [5] [6] [7] [8] [9] 3 6

69 Usunięcie elementu z kopca: 9 [1] [2] 4 8 [3] [4] [5] [6] [7] [8] [9] 3 6

70 Usunięcie elementu z kopca: 9 [1] [2] 4 8 [3] [4] [5] [6] [7] [8] [9] 3 6

71 Usunięcie elementu z kopca: 9 [1] [2] 7 8 [3] [4] [5] [6] [7] [8] [9] 3 6

72 Usunięcie elementu z kopca: 9 [1] [2] 7 8 [3] [4] [5] [6] [7] [8] [9] 3 6

73 Usunięcie elementu z kopca: 9 [1] [2] 7 8 [3] [4] [5] [6] [7] [8] [9] 3 4

74 Usunięcie elementu z kopca: 9 [1] [2] 7 8 [3] [4] [5] [6] [7] [8] [9] 3 4

75 Wstawianie nowego elementu 8 do kopca: 9 [1] [2] 7 8 [3] [4] [5] [6] [7] [8] [9] 3 4

76 Wstawianie nowego elementu 8 do kopca: 9 [1] [2] 7 8 [3] [4] [5] [6] [7] [8] [9] 3 4 [10] 8

77 Wstawianie nowego elementu 8 do kopca: 9 [1] [2] 7 8 [3] [4] [5] [6] [7] [8] [9] 3 4 [10] 8

78 Wstawianie nowego elementu 8 do kopca: 9 [1] [2] 7 8 [3] [4] [5] [6] [7] [8] [9] 3 4 [10] 5

79 Wstawianie nowego elementu 8 do kopca: 9 [1] [2] 7 8 [3] [4] [5] [6] [7] [8] [9] 3 4 [10] 5

80 Wstawianie nowego elementu 8 do kopca: 9 [1] [2] 8 8 [3] [4] [5] [6] [7] [8] [9] 3 4 [10] 5

81 Wstawianie nowego elementu 8 do kopca: 9 [1] [2] 8 8 [3] [4] [5] [6] [7] [8] [9] 3 4 [10] 5

82 Wstawianie nowego elementu 8 do kopca: 9 [1] [2] 8 8 [3] [4] [5] [6] [7] [8] [9] 3 4 [10] 5

83 PODSUMOWANIE Struktura Dost p Wyszukanie Wstawienie Usuni cie Tablica O(1) O(n) O(n) O(n) Lista O(n) O(n) O(1) O(n) Kolejka O(1) O(n) O(1) O(n) Stos O(1) O(n) O(1) O(n) Kopiec O(1) O(n log n) O(log n) O(log n)

84 Kolejka i Stos s strukturami o specycznych zastosowaniach i tylko dzi ki naªo»onym ograniczeniom posiadaj korzystniejsze czasy dost pu lub wstawiania elementu (w stosunku do Tablicy i Listy). Kopiec ma korzystne czasy wstawiania i usuwania elementów w stosunku do pozostaªych struktur (wprawdzie czasy wstawiania dla Listy, Kolejki i Stosu s szybsze, jednak suma czasów wstawiania i usuwania jest mniejsza wªa±nie dla Kopca). Kopiec nie jest dobr struktur do wyszukiwania elementów. Co zrobi, aby przyspieszy operacj Wyszukiwania?

85 Zaawansowane struktury danych W±ród struktur przeznaczonych do wyszukiwania elementów mo»na wymieni drzewo poszukiwa«binarnych (ang. w zªa, x, musi by speªniony nast puj cy warunek: Binary Search Tree, czyli drzewo BST), w którym dla ka»dego warto± ka»dego elementu le» cego w lewym poddrzewie w zªa x jest nie wi ksza ni» warto± w zªa x, natomiast warto± ka»dego elementu le» cego w prawym poddrzewie w zªa x jest nie mniejsza ni» warto± tego w zªa.

86 Przykłady drzew BST dla danych: {8, 3, 1, 5, 6, 9, 2, 12, 7, 4} k = k =

87 Zwró my uwag,»e drzewo BST nie musi by peªne. Zatem jego liczba poziomów, k, mo»e by wi ksza ni» log n (maksymalnie mo»e wynosi n). Mo»na jednak wykaza,»e ±rednia warto± k dla losowo zbudowanego drzewa wynosi O(log n). Dosy ªatwo doj± do tego,»e wyszukanie elementu mo»na wykona w czasie O(k) (zaczynamy w korzeniu i schodzimy pojedyncz ±cie»k w dóª). Operacje wstawiania i usuwania równie» zajmuj O(k) operacji (zasada wstawiania podobna jak przy wyszukiwaniu, usuwania nieco bardziej skomplikowana zob. np. Cormen i in.).

88 W drzewach BST problemem mo»e by zbyt du»a wysoko± drzewa. Problem ten mo»na rozwi za stosuj c drzewa czerwono-czarne. S to takie drzewa BST, w których ka»dy w zeª posiada dodatkowy parametr - kolor, mog cy przyjmowa dwie warto±ci: czerwony lub czarny. Dodatkowo, musz by speªnione nast puj ce warunki: ka»dy li± (NIL) musi by czarny, oba w zªy potomne w zªa czerwonego musz by czarne, wszystkie ±cie»ki z danego w zªa do li±ci maj tyle samo czarnych w zªów. Dzi ki temu ka»da ±cie»ka w drzewie jest co najwy»ej dwa razy dªu»sza ni» dowolna inna, co zapewnia,»e drzewo jest w przybli»eniu zrównowa»one, a jego wysoko± wynosi O(log n).

89 Przykład drzewa czerwono-czarnego NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL

90 Przy okazji zaawansowanych struktur danych warto równie» wspomnie o tablicach haszuj cych. Sªu» one do efektywnego realizowania operacji sªownikowych (wstawianie, wyszukiwanie, usuwanie). Zaªó»my,»e mamy zbiór n elementów o okre±lonych warto±ciach. Tablica haszuj ca zbudowana jest typowo z tablicy wska¹ników o rozmiarze m (gdzie m n). Kluczowym elementem takiej struktury jestfunkcja haszuj ca h(k) zwracaj ca dla okre±lonego elementu o warto±ci k warto± z zakresu [0, m 1]. Dodatkowym wymogiem jest, aby funkcja taka byªa deterministyczna, tzn. zawsze dla elementu o wartosci k musi zwróci t sam warto±.

91 Element, dla którego h(k) = j jest umieszczany w li±cie pod indeksem j (0 j < m) tablicy haszuj cej. Oczywi±cie efektywno± tablicy haszuj cej ±ci±le zale»y odczasu wyliczania funkcji haszujacej. Najlepiej, aby byªo to O(1). Prostym przykªadem takiej funkcji mo»e by h(k) = k mod m. Inn wa»n cech, jak powinna posiada dobra funkcja haszuj ca, jest równomierne haszowanie, tzn. losowo wybrana warto± ma by z jednakowym prawdopodobie«stwem odwzorowywana na ka»d z m pozycji. Dzi ki równomiernemu haszowaniu, wszystkie listy tablicy haszuj cej maj podobn dªugo±, co gwarantuje,»e maksymalny czas wykonywania operacji sªownikowych jest mo»liwie krótki (najkrótszy byªby, gdyby wszystkie listy miaªy identyczn dªugo± ). Wynika to z faktu,»e nie natramy na dªug list, a jak ju» wiemy czas powy»szych operacji zale»y wªa±nie od dªugo±ci listy.

92 Przykładowa tablica haszująca m = 4; n = 9

Listy i operacje pytania

Listy i operacje pytania Listy i operacje pytania Iwona Polak iwona.polak@us.edu.pl Uniwersytet l ski Instytut Informatyki pa¹dziernika 07 Który atrybut NIE wyst puje jako atrybut elementów listy? klucz elementu (key) wska¹nik

Bardziej szczegółowo

Zadania z kolokwiów ze Wst pu do Informatyki. Semestr II.

Zadania z kolokwiów ze Wst pu do Informatyki. Semestr II. Zadania z kolokwiów ze Wst pu do Informatyki. Semestr II. Poni»sze zadania s wyborem zada«z kolokwiów ze Wst pu do Informatyki jakie przeprowadziªem w ci gu ostatnich lat. Marek Zawadowski Zadanie 1 Napisz

Bardziej szczegółowo

ALGORYTMY SORTOWANIA DANYCH

ALGORYTMY SORTOWANIA DANYCH ALGORYTMY SORTOWANIA DANYCH W zagadnieniu sortowania danych rozpatrywa b dziemy n liczb caªkowitych, b d cych pierwotnie w losowej kolejno±ci, które nale»y uporz dkowa nierosn co. Oczywi±cie sortowa mo»emy

Bardziej szczegółowo

Programowanie i struktury danych 1 / 44

Programowanie i struktury danych 1 / 44 Programowanie i struktury danych 1 / 44 Lista dwukierunkowa Lista dwukierunkowa to liniowa struktura danych skªadaj ca si z ci gu elementów, z których ka»dy pami ta swojego nast pnika i poprzednika. Operacje

Bardziej szczegółowo

Rekurencyjne struktury danych

Rekurencyjne 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ółowo

Metody dowodzenia twierdze«

Metody dowodzenia twierdze« Metody dowodzenia twierdze«1 Metoda indukcji matematycznej Je±li T (n) jest form zdaniow okre±lon w zbiorze liczb naturalnych, to prawdziwe jest zdanie (T (0) n N (T (n) T (n + 1))) n N T (n). 2 W przypadku

Bardziej szczegółowo

Lab. 02: Algorytm Schrage

Lab. 02: Algorytm Schrage Lab. 02: Algorytm Schrage Andrzej Gnatowski 5 kwietnia 2015 1 Opis zadania Celem zadania laboratoryjnego jest zapoznanie si z jednym z przybli»onych algorytmów sªu» cych do szukania rozwi za«znanego z

Bardziej szczegółowo

ANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15

ANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15 ANALIZA NUMERYCZNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Metoda Eulera 3 1.1 zagadnienia brzegowe....................... 3 1.2 Zastosowanie ró»niczki...................... 4 1.3 Output do pliku

Bardziej szczegółowo

Listy, kolejki, stosy

Listy, kolejki, stosy Listy, kolejki, stosy abc Lista O Struktura danych składa się z węzłów, gdzie mamy informacje (dane) i wskaźniki do następnych węzłów. Zajmuje tyle miejsca w pamięci ile mamy węzłów O Gdzie można wykorzystać:

Bardziej szczegółowo

Przykªady problemów optymalizacji kombinatorycznej

Przykªady problemów optymalizacji kombinatorycznej Przykªady problemów optymalizacji kombinatorycznej Problem Komiwoja»era (PK) Dane: n liczba miast, n Z +, c ji, i, j {1,..., n}, i j odlegªo± mi dzy miastem i a miastem j, c ji = c ij, c ji R +. Zadanie:

Bardziej szczegółowo

Metodydowodzenia twierdzeń

Metodydowodzenia twierdzeń 1 Metodydowodzenia twierdzeń Przez zdanie rozumiemy dowolne stwierdzenie, które jest albo prawdziwe, albo faªszywe (nie mo»e by ono jednocze±nie prawdziwe i faªszywe). Tradycyjnie b dziemy u»ywali maªych

Bardziej szczegółowo

c Marcin Sydow Przepªywy Grafy i Zastosowania Podsumowanie 12: Przepªywy w sieciach

c Marcin Sydow Przepªywy Grafy i Zastosowania Podsumowanie 12: Przepªywy w sieciach 12: w sieciach Spis zagadnie«sieci przepªywowe przepªywy w sieciach ±cie»ka powi kszaj ca tw. Forda-Fulkersona Znajdowanie maksymalnego przepªywu Zastosowania przepªywów Sieci przepªywowe Sie przepªywowa

Bardziej szczegółowo

Wst p teoretyczny do wiczenia nr 3 - Elementy kombinatoryki

Wst p teoretyczny do wiczenia nr 3 - Elementy kombinatoryki Wst p teoretyczny do wiczenia nr 3 - Elementy kombinatoryki 1 Zadania na wiczenia nr 3 - Elementy kombinatoryki Zad. 1. Ile istnieje ró»nych liczb czterocyfrowych zakªadaj c,»e cyfry nie powtarzaj si a

Bardziej szczegółowo

O pewnym zadaniu olimpijskim

O pewnym zadaniu olimpijskim O pewnym zadaniu olimpijskim Michaª Seweryn, V LO w Krakowie opiekun pracy: dr Jacek Dymel Problem pocz tkowy Na drugim etapie LXII Olimpiady Matematycznej pojawiª si nast puj cy problem: Dla ka»dej liczby

Bardziej szczegółowo

Relacj binarn okre±lon w zbiorze X nazywamy podzbiór ϱ X X.

Relacj binarn okre±lon w zbiorze X nazywamy podzbiór ϱ X X. Relacje 1 Relacj n-argumentow nazywamy podzbiór ϱ X 1 X 2... X n. Je±li ϱ X Y jest relacj dwuargumentow (binarn ), to zamiast (x, y) ϱ piszemy xϱy. Relacj binarn okre±lon w zbiorze X nazywamy podzbiór

Bardziej szczegółowo

Struktury danych: stos, kolejka, lista, drzewo

Struktury danych: stos, kolejka, lista, drzewo Struktury danych: stos, kolejka, lista, drzewo Wykład: dane w strukturze, funkcje i rodzaje struktur, LIFO, last in first out, kolejka FIFO, first in first out, push, pop, size, empty, głowa, ogon, implementacja

Bardziej szczegółowo

Algorytmy i struktury danych. Drzewa: BST, kopce. Letnie Warsztaty Matematyczno-Informatyczne

Algorytmy 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ółowo

1 Bª dy i arytmetyka zmiennopozycyjna

1 Bª dy i arytmetyka zmiennopozycyjna 1 Bª dy i arytmetyka zmiennopozycyjna Liczby w pami ci komputera przedstawiamy w ukªadzie dwójkowym w postaci zmiennopozycyjnej Oznacza to,»e s one postaci ±m c, 01 m < 1, c min c c max, (1) gdzie m nazywamy

Bardziej szczegółowo

Rzut oka na zagadnienia zwi zane z projektowaniem list rozkazów

Rzut oka na zagadnienia zwi zane z projektowaniem list rozkazów Rzut oka na zagadnienia zwi zane z projektowaniem list rozkazów 1 Wst p Przypomnijmy,»e komputer skªada si z procesora, pami ci, systemu wej±cia-wyj±cia oraz po- ª cze«mi dzy nimi. W procesorze mo»emy

Bardziej szczegółowo

1 Stos: Stack i Stack<T>

1 Stos: Stack i Stack<T> 1 Stos: Stack i Stack Przykªady z»ycia: Stos talerzy (aby wyci gn co± ze ±rodka, musimy wyci gn te z góry) Meble ªadowane do naczepy ci»arówki Osoby wsiadaj ce do samolotu i wysiadaj ce z niego. Piramida

Bardziej szczegółowo

1 Metody iteracyjne rozwi zywania równania f(x)=0

1 Metody iteracyjne rozwi zywania równania f(x)=0 1 Metody iteracyjne rozwi zywania równania f()=0 1.1 Metoda bisekcji Zaªó»my,»e funkcja f jest ci gªa w [a 0, b 0 ]. Pierwiastek jest w przedziale [a 0, b 0 ] gdy f(a 0 )f(b 0 ) < 0. (1) Ustalmy f(a 0

Bardziej szczegółowo

Egzaminy i inne zadania. Semestr II.

Egzaminy i inne zadania. Semestr II. Egzaminy i inne zadania. Semestr II. Poni»sze zadania s wyborem zada«ze Wst pu do Informatyki z egzaminów jakie przeprowadziªem w ci gu ostatnich lat. Ponadto doª czyªem szereg zada«, które pojawiaªy si

Bardziej szczegółowo

Ekonometria. wiczenia 1 Regresja liniowa i MNK. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Ekonometria. wiczenia 1 Regresja liniowa i MNK. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej Ekonometria wiczenia 1 Regresja liniowa i MNK (1) Ekonometria 1 / 25 Plan wicze«1 Ekonometria czyli...? 2 Obja±niamy ceny wina 3 Zadania z podr cznika (1) Ekonometria 2 / 25 Plan prezentacji 1 Ekonometria

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.

.! $ 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ółowo

X WARMI SKO-MAZURSKIE ZAWODY MATEMATYCZNE 18 maja 2012 (szkoªy ponadgimnazjalne)

X WARMI SKO-MAZURSKIE ZAWODY MATEMATYCZNE 18 maja 2012 (szkoªy ponadgimnazjalne) X WARMI SKO-MAZURSKIE ZAWODY MATEMATYCZNE 18 maja 2012 (szkoªy ponadgimnazjalne) Zadanie 1 Obecnie u»ywane tablice rejestracyjne wydawane s od 1 maja 2000r. Numery rejestracyjne aut s tworzone ze zbioru

Bardziej szczegółowo

Arkusz maturalny. Šukasz Dawidowski. 25 kwietnia 2016r. Powtórki maturalne

Arkusz maturalny. Šukasz Dawidowski. 25 kwietnia 2016r. Powtórki maturalne Arkusz maturalny Šukasz Dawidowski Powtórki maturalne 25 kwietnia 2016r. Odwrotno±ci liczby rzeczywistej 1. 9 8 2. 0, (1) 3. 8 9 4. 0, (8) 3 4 4 4 1 jest liczba Odwrotno±ci liczby rzeczywistej 3 4 4 4

Bardziej szczegółowo

Algorytmy zwiazane z gramatykami bezkontekstowymi

Algorytmy 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ółowo

Struktury Danych i Złożoność Obliczeniowa

Struktury Danych i Złożoność Obliczeniowa Struktury Danych i Złożoność Obliczeniowa Zajęcia 1 Podstawowe struktury danych Tablica Najprostsza metoda przechowywania serii danych, zalety: prostota, wady: musimy wiedzieć, ile elementów chcemy przechowywać

Bardziej szczegółowo

TEORIA GRAFÓW. Graf skierowany dla ka»dej kraw dzi (oznaczanej tutaj jako ªuk) para wierzchoªków incydentnych jest par uporz dkowan {u, v}.

TEORIA GRAFÓW. Graf skierowany dla ka»dej kraw dzi (oznaczanej tutaj jako ªuk) para wierzchoªków incydentnych jest par uporz dkowan {u, v}. Podstawowe denicje: TEORIA GRAFÓW Graf (nieskierowany) G = (V, E) struktura skªadaj ca si ze: zbioru wierzchoªków V = {,,..., v n } oraz zbioru kraw dzi E = {e 1, e 2,..., e m }. Z ka»d kraw dzi e skojarzona

Bardziej szczegółowo

Algorytmy grafowe 2. Andrzej Jastrz bski. Akademia ETI. Politechnika Gda«ska Algorytmy grafowe 2

Algorytmy grafowe 2. Andrzej Jastrz bski. Akademia ETI. Politechnika Gda«ska Algorytmy grafowe 2 Algorytmy grafowe 2 Andrzej Jastrz bski Akademia ETI Minimalne drzewo spinaj ce Drzewem nazywamy spójny graf nie posiadaj cy cyklu. Liczba wierzchoªków drzewa jest o jeden wi ksza od liczby jego kraw dzi.

Bardziej szczegółowo

Wybrane poj cia i twierdzenia z wykªadu z teorii liczb

Wybrane poj cia i twierdzenia z wykªadu z teorii liczb Wybrane poj cia i twierdzenia z wykªadu z teorii liczb 1. Podzielno± Przedmiotem bada«teorii liczb s wªasno±ci liczb caªkowitych. Zbiór liczb caªkowitych oznacza b dziemy symbolem Z. Zbiór liczb naturalnych

Bardziej szczegółowo

Algorytmy i Struktury Danych, 9. ćwiczenia

Algorytmy 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ółowo

Statystyka. Šukasz Dawidowski. Instytut Matematyki, Uniwersytet l ski

Statystyka. Šukasz Dawidowski. Instytut Matematyki, Uniwersytet l ski Statystyka Šukasz Dawidowski Instytut Matematyki, Uniwersytet l ski Statystyka Statystyka: nauka zajmuj ca si liczbowym opisem zjawisk masowych oraz ich analizowaniem, zbiory informacji liczbowych. (Sªownik

Bardziej szczegółowo

2 Liczby rzeczywiste - cz. 2

2 Liczby rzeczywiste - cz. 2 2 Liczby rzeczywiste - cz. 2 W tej lekcji omówimy pozostaªe tematy zwi zane z liczbami rzeczywistymi. 2. Przedziaªy liczbowe Wyró»niamy nast puj ce rodzaje przedziaªów liczbowych: (a) przedziaªy ograniczone:

Bardziej szczegółowo

Ekonometria. wiczenia 13 Metoda ±cie»ki krytycznej. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Ekonometria. wiczenia 13 Metoda ±cie»ki krytycznej. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej wiczenia 13 Metoda ±cie»ki krytycznej Instytut Ekonometrii Zakªad Ekonometrii Stosowanej Plan wicze«1 Przykªad: ubieranie choinki 2 3 Programowanie liniowe w analizie czasowej i czasowo-kosztowej projektu

Bardziej szczegółowo

JAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1

JAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1 J zyki formalne i operacje na j zykach J zyki formalne s abstrakcyjnie zbiorami sªów nad alfabetem sko«czonym Σ. J zyk formalny L to opis pewnego problemu decyzyjnego: sªowa to kody instancji (wej±cia)

Bardziej szczegółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

Wska¹niki, tablice dynamiczne wielowymiarowe

Wska¹niki, tablice dynamiczne wielowymiarowe Rozdziaª 11 Wska¹niki, tablice dynamiczne wielowymiarowe 11.1 Wst p Identycznie, jak w przypadku tablic statycznych, tablica dynamiczna mo»e by tablic jedno-, dwu-, trójitd. wymiarow. Tablica dynamiczna

Bardziej szczegółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

Temat: 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. 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ółowo

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno

Podstawy 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ółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

Macierze i Wyznaczniki

Macierze i Wyznaczniki Macierze i Wyznaczniki Kilka wzorów i informacji pomocniczych: Denicja 1. Tablic nast puj cej postaci a 11 a 12... a 1n a 21 a 22... a 2n A =... a m1 a m2... a mn nazywamy macierz o m wierszach i n kolumnach,

Bardziej szczegółowo

i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski 5 kwietnia 2017

i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski 5 kwietnia 2017 i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski Uniwersytet Šódzki, Wydziaª Matematyki i Informatyki UŠ piotr@fulmanski.pl http://fulmanski.pl/zajecia/prezentacje/festiwalnauki2017/festiwal_wmii_2017_

Bardziej szczegółowo

Algorytmy i struktury danych. wykład 5

Algorytmy i struktury danych. wykład 5 Plan wykładu: Wskaźniki. : listy, drzewa, kopce. Wskaźniki - wskaźniki Wskaźnik jest to liczba lub symbol który w ogólności wskazuje adres komórki pamięci. W językach wysokiego poziomu wskaźniki mogą również

Bardziej szczegółowo

Funkcje, wielomiany. Informacje pomocnicze

Funkcje, wielomiany. Informacje pomocnicze Funkcje, wielomiany Informacje pomocnicze Przydatne wzory: (a + b) 2 = a 2 + 2ab + b 2 (a b) 2 = a 2 2ab + b 2 (a + b) 3 = a 3 + 3a 2 b + 3ab 2 + b 3 (a b) 3 = a 3 3a 2 b + 3ab 2 b 3 a 2 b 2 = (a + b)(a

Bardziej szczegółowo

Wektory w przestrzeni

Wektory w przestrzeni Wektory w przestrzeni Informacje pomocnicze Denicja 1. Wektorem nazywamy uporz dkowan par punktów. Pierwszy z tych punktów nazywamy pocz tkiem wektora albo punktem zaczepienia wektora, a drugi - ko«cem

Bardziej szczegółowo

Lekcja 2 - BUDUJEMY I CZARUJEMY

Lekcja 2 - BUDUJEMY I CZARUJEMY Lekcja 2 - BUDUJEMY I CZARUJEMY Na tej lekcji dowiemy si, jak korzysta z trybów Budowania oraz Czarowania w programie Baltie. Troch ju» wiemy o tych dwóch trybach z poprzedniej lekcji, jednak przypomnijmy

Bardziej szczegółowo

Programowanie wspóªbie»ne

Programowanie wspóªbie»ne 1 Zadanie 1: Programowanie wspóªbie»ne wiczenia 12 Przestrzenie krotek cz. 2 Przychodnia lekarska W przychodni lekarskiej pracuje L > 0 lekarzy, z których ka»dy ma jedn z 0 < S L specjalno±ci, przy czym

Bardziej szczegółowo

Materiaªy do Repetytorium z matematyki

Materiaªy do Repetytorium z matematyki Materiaªy do Repetytorium z matematyki 0/0 Dziaªania na liczbach wymiernych i niewymiernych wiczenie Obliczy + 4 + 4 5. ( + ) ( 4 + 4 5). ( : ) ( : 4) 4 5 6. 7. { [ 7 4 ( 0 7) ] ( } : 5) : 0 75 ( 8) (

Bardziej szczegółowo

Wojewódzki Konkurs Matematyczny

Wojewódzki Konkurs Matematyczny Wojewódzki Konkurs Matematyczny dla uczniów gimnazjów ETAP SZKOLNY 16 listopada 2012 Czas 90 minut Instrukcja dla Ucznia 1. Otrzymujesz do rozwi zania 10 zada«zamkni tych oraz 5 zada«otwartych. 2. Obok

Bardziej szczegółowo

Wojewódzki Konkurs Matematyczny

Wojewódzki Konkurs Matematyczny sumaryczna liczba punktów (wypeªnia sprawdzaj cy) Wojewódzki Konkurs Matematyczny dla uczniów gimnazjów 13 luty 2014 Czas 90 minut 1. Otrzymujesz do rozwi zania 10 zada«zamkni tych oraz 5 zada«otwartych.

Bardziej szczegółowo

PROE wykład 7 kontenery tablicowe, listy. dr inż. Jacek Naruniec

PROE wykład 7 kontenery tablicowe, listy. dr inż. Jacek Naruniec PROE wykład 7 kontenery tablicowe, listy dr inż. Jacek Naruniec Prosty kontener oparty na tablicach Funkcja dodawanie pojedynczego słonia do kontenera: 1 2 3 4 5 6 7 11 12 13 14 15 16 17 21 22 23 24 25

Bardziej szczegółowo

1 Klasy. 1.1 Denicja klasy. 1.2 Skªadniki klasy.

1 Klasy. 1.1 Denicja klasy. 1.2 Skªadniki klasy. 1 Klasy. Klasa to inaczej mówi c typ który podobnie jak struktura skªada si z ró»nych typów danych. Tworz c klas programista tworzy nowy typ danych, który mo»e by modelem rzeczywistego obiektu. 1.1 Denicja

Bardziej szczegółowo

Metody numeryczne. Wst p do metod numerycznych. Dawid Rasaªa. January 9, 2012. Dawid Rasaªa Metody numeryczne 1 / 9

Metody numeryczne. Wst p do metod numerycznych. Dawid Rasaªa. January 9, 2012. Dawid Rasaªa Metody numeryczne 1 / 9 Metody numeryczne Wst p do metod numerycznych Dawid Rasaªa January 9, 2012 Dawid Rasaªa Metody numeryczne 1 / 9 Metody numeryczne Czym s metody numeryczne? Istota metod numerycznych Metody numeryczne s

Bardziej szczegółowo

Wykład 3. Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy

Wykład 3. Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy Wykład 3 Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy Dynamiczne struktury danych Lista jest to liniowo uporządkowany zbiór elementów, z których dowolny element

Bardziej szczegółowo

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14 WST P DO TEORII INFORMACJI I KODOWANIA Grzegorz Szkibiel Wiosna 203/4 Spis tre±ci Kodowanie i dekodowanie 4. Kodowanie a szyfrowanie..................... 4.2 Podstawowe poj cia........................

Bardziej szczegółowo

1 a + b 1 = 1 a + 1 b 1. (a + b 1)(a + b ab) = ab, (a + b)(a + b ab 1) = 0, (a + b)[a(1 b) + (b 1)] = 0,

1 a + b 1 = 1 a + 1 b 1. (a + b 1)(a + b ab) = ab, (a + b)(a + b ab 1) = 0, (a + b)[a(1 b) + (b 1)] = 0, XIII Warmi«sko-Mazurskie Zawody Matematyczne. Olsztyn 2015 Rozwi zania zada«dla szkóª ponadgimnazjalnych ZADANIE 1 Zakªadamy,»e a, b 0, 1 i a + b 1. Wykaza,»e z równo±ci wynika,»e a = -b 1 a + b 1 = 1

Bardziej szczegółowo

Rozdział 6. Pakowanie plecaka. 6.1 Postawienie problemu

Rozdział 6. Pakowanie plecaka. 6.1 Postawienie problemu Rozdział 6 Pakowanie plecaka 6.1 Postawienie problemu Jak zauważyliśmy, szyfry oparte na rachunku macierzowym nie są przerażająco trudne do złamania. Zdecydowanie trudniejszy jest kryptosystem oparty na

Bardziej szczegółowo

Szeregowanie zada« Wykªad nr 4. dr Hanna Furma«czyk. 21 marca 2013

Szeregowanie zada« Wykªad nr 4. dr Hanna Furma«czyk. 21 marca 2013 Wykªad nr 4 21 marca 2013 Minimalizacja ª cznego czasu zako«czenia zadania C j. Zadania niezale»ne krótkie zadania umieszczamy na pocz tku - reguªa SPT (ang. shortest Processing Time) Minimalizacja ª cznego

Bardziej szczegółowo

Podstawy modelowania w j zyku UML

Podstawy modelowania w j zyku UML Podstawy modelowania w j zyku UML dr hab. Bo»ena Wo¹na-Szcze±niak Akademia im. Jan Dªugosza bwozna@gmail.com Wykªad 2 Zwi zki mi dzy klasami Asocjacja (ang. Associations) Uogólnienie, dziedziczenie (ang.

Bardziej szczegółowo

Elementy geometrii w przestrzeni R 3

Elementy geometrii w przestrzeni R 3 Elementy geometrii w przestrzeni R 3 Z.Šagodowski Politechnika Lubelska 29 maja 2016 Podstawowe denicje Wektorem nazywamy uporz dkowan par punktów (A,B) z których pierwszy nazywa si pocz tkiem a drugi

Bardziej szczegółowo

Minimalne drzewa rozpinaj ce

Minimalne drzewa rozpinaj ce y i y i drzewa Spis zagadnie«y i drzewa i lasy cykle fundamentalne i rozci cia fundamentalne wªasno±ci cykli i rozci minimalne drzewa algorytm algorytm Drzewo y i spójnego, nieskierowanego grafu prostego

Bardziej szczegółowo

Algorytmy i Struktury Danych. (c) Marcin Sydow. Wst p. Linked Lists. Abstrakcyjne Struktury Danych. Podsumowanie. Stos, Kolejka

Algorytmy i Struktury Danych. (c) Marcin Sydow. Wst p. Linked Lists. Abstrakcyjne Struktury Danych. Podsumowanie. Stos, Kolejka Zawarto± wykªadu: Typy operacji na ci gach Listy dowi zaniowe (ang. linked lists): lista jednokierunkowa lista dwukierunkowa Stos Kolejka przykªad rozszerzenia: kolejka dwustronna Ci gi Ci gi elementów

Bardziej szczegółowo

Rodzina B-drzew [ ]

Rodzina B-drzew [ ] Rodzina B-drzew [24.01.2011] Piotr Walkowski, 221135 Wrocªaw, 03.02.2011 Spis tre±ci 1 Rodzina B-drzew 2 2 B-Drzewo 2 2.1 oszacowanie wysoko±ci................................... 3 2.2 podstawowe operacje....................................

Bardziej szczegółowo

Programowanie wspóªbie»ne

Programowanie wspóªbie»ne 1 Programowanie wspóªbie»ne wiczenia 5 monitory cz. 1 Zadanie 1: Stolik dwuosobowy raz jeszcze W systemie dziaªa N par procesów. Procesy z pary s nierozró»nialne. Ka»dy proces cyklicznie wykonuje wªasnesprawy,

Bardziej szczegółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania Wstęp do programowania Stosy, kolejki, drzewa Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. VII Jesień 2013 1 / 25 Listy Lista jest uporządkowanym zbiorem elementów. W Pythonie

Bardziej szczegółowo

XVII Warmi«sko-Mazurskie Zawody Matematyczne

XVII Warmi«sko-Mazurskie Zawody Matematyczne 1 XVII Warmi«sko-Mazurskie Zawody Matematyczne Kategoria: klasa VIII szkoªy podstawowej i III gimnazjum Olsztyn, 16 maja 2019r. Zad. 1. Udowodnij,»e dla dowolnych liczb rzeczywistych x, y, z speªniaj cych

Bardziej szczegółowo

Podziaª pracy. Cz ± II. 1 Tablica sortuj ca. Rozwi zanie

Podziaª pracy. Cz ± II. 1 Tablica sortuj ca. Rozwi zanie Cz ± II Podziaª pracy 1 Tablica sortuj ca Kolejka priorytetowa to struktura danych udost pniaj ca operacje wstawienia warto±ci i pobrania warto±ci minimalnej. Z kolejki liczb caªkowitych, za po±rednictwem

Bardziej szczegółowo

Algorytmy i Struktury Danych

Algorytmy i Struktury Danych Lista zada«. Nr 4. 9 kwietnia 2016 IIUWr. II rok informatyki. Algorytmy i Struktury Danych 1. (0pkt) Rozwi» wszystkie zadania dodatkowe. 2. (1pkt) Uªó» algorytm znajduj cy najta«sz drog przej±cia przez

Bardziej szczegółowo

KLASYCZNE ZDANIA KATEGORYCZNE. ogólne - orzekaj co± o wszystkich desygnatach podmiotu szczegóªowe - orzekaj co± o niektórych desygnatach podmiotu

KLASYCZNE ZDANIA KATEGORYCZNE. ogólne - orzekaj co± o wszystkich desygnatach podmiotu szczegóªowe - orzekaj co± o niektórych desygnatach podmiotu ➏ Filozoa z elementami logiki Na podstawie wykªadów dra Mariusza Urba«skiego Sylogistyka Przypomnij sobie: stosunki mi dzy zakresami nazw KLASYCZNE ZDANIA KATEGORYCZNE Trzy znaczenia sªowa jest trzy rodzaje

Bardziej szczegółowo

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki.

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki. Wydziaª Matematyki, Fizyki i Informatyki 10 marca 2008 Spis tre±ci Listy 1 Listy 2 3 Co to jest lista? Listy List w Mathematice jest wyra»enie oddzielone przecinkami i zamkni te w { klamrach }. Elementy

Bardziej szczegółowo

Równania ró»niczkowe I rz du (RRIR) Twierdzenie Picarda. Anna D browska. WFTiMS. 23 marca 2010

Równania ró»niczkowe I rz du (RRIR) Twierdzenie Picarda. Anna D browska. WFTiMS. 23 marca 2010 WFTiMS 23 marca 2010 Spis tre±ci 1 Denicja 1 (równanie ró»niczkowe pierwszego rz du) Równanie y = f (t, y) (1) nazywamy równaniem ró»niczkowym zwyczajnym pierwszego rz du w postaci normalnej. Uwaga 1 Ogólna

Bardziej szczegółowo

Aproksymacja funkcji metod najmniejszych kwadratów

Aproksymacja funkcji metod najmniejszych kwadratów Aproksymacja funkcji metod najmniejszych kwadratów Teoria Interpolacja polega na znajdowaniu krzywej przechodz cej przez wszystkie w zªy. Zdarzaj si jednak sytuacje, w których dane te mog by obarczone

Bardziej szczegółowo

Temat: Struktury danych do reprezentacji grafów. Wybrane algorytmy grafowe.

Temat: 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ółowo

MiASI. Modelowanie systemów informatycznych. Piotr Fulma«ski. 18 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

MiASI. Modelowanie systemów informatycznych. Piotr Fulma«ski. 18 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska MiASI Modelowanie systemów informatycznych Piotr Fulma«ski Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska 18 stycznia 2010 Spis tre±ci 1 Analiza systemu informatycznego Poziomy analizy 2

Bardziej szczegółowo

Baza danych - Access. 2 Budowa bazy danych

Baza danych - Access. 2 Budowa bazy danych Baza danych - Access 1 Baza danych Jest to zbiór danych zapisanych zgodnie z okre±lonymi reguªami. W w»szym znaczeniu obejmuje dane cyfrowe gromadzone zgodnie z zasadami przyj tymi dla danego programu

Bardziej szczegółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

Przetwarzanie sygnaªów

Przetwarzanie sygnaªów Przetwarzanie sygnaªów Laboratorium 1 - wst p do C# Dawid Poªap Przetwarzanie sygnaªów Pa¹dziernik, 2018 1 / 17 Czego mo»na oczekiwa wzgl dem programowania w C# na tych laboratoriach? Dawid Poªap Przetwarzanie

Bardziej szczegółowo

A = n. 2. Ka»dy podzbiór zbioru sko«czonego jest zbiorem sko«czonym. Dowody tych twierdze«(elementarne, lecz nieco nu» ce) pominiemy.

A = n. 2. Ka»dy podzbiór zbioru sko«czonego jest zbiorem sko«czonym. Dowody tych twierdze«(elementarne, lecz nieco nu» ce) pominiemy. Logika i teoria mnogo±ci, konspekt wykªad 12 Teoria mocy, cz ± II Def. 12.1 Ka»demu zbiorowi X przyporz dkowujemy oznaczany symbolem X obiekt zwany liczb kardynaln (lub moc zbioru X) w taki sposób,»e ta

Bardziej szczegółowo

Lekcja 3 - BANKI I NOWE PRZEDMIOTY

Lekcja 3 - BANKI I NOWE PRZEDMIOTY Lekcja 3 - BANKI I NOWE PRZEDMIOTY Wiemy ju» co to s banki przedmiotów i potramy z nich korzysta. Dowiedzieli±my si te»,»e mo»emy tworzy nowe przedmioty, a nawet caªe banki przedmiotów. Na tej lekcji zajmiemy

Bardziej szczegółowo

PRZYPOMNIENIE Ka»d przestrze«wektorow V, o wymiarze dim V = n < nad ciaªem F mo»na jednoznacznie odwzorowa na przestrze«f n n-ek uporz dkowanych:

PRZYPOMNIENIE Ka»d przestrze«wektorow V, o wymiarze dim V = n < nad ciaªem F mo»na jednoznacznie odwzorowa na przestrze«f n n-ek uporz dkowanych: Plan Spis tre±ci 1 Homomorzm 1 1.1 Macierz homomorzmu....................... 2 1.2 Dziaªania............................... 3 2 Ukªady równa«6 3 Zadania 8 1 Homomorzm PRZYPOMNIENIE Ka»d przestrze«wektorow

Bardziej szczegółowo

Wielomiany o wspóªczynnikach rzeczywistych

Wielomiany o wspóªczynnikach rzeczywistych Wielomiany o wspóªczynnikach rzeczywistych Wielomian: W (x) = a n x n + a n 1 x n 1 + a n 2 x n 2 +... + a 2 x 2 + a 1 x + a 0 wspóªczynniki wielomianu: a 0, a 1, a 2,..., a n 1, a n ; wyraz wolny: a 0

Bardziej szczegółowo

Lekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz

Lekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz Lekcja 8 - ANIMACJA 1 Polecenia Za pomoc Baltiego mo»emy tworzy animacj, tzn. sprawia by obraz na ekranie wygl daª jakby si poruszaª. Do animowania przedmiotów i tworzenia animacji posªu» nam polecenia

Bardziej szczegółowo

Programowanie wspóªbie»ne

Programowanie wspóªbie»ne 1 Zadanie 1: Bar Programowanie wspóªbie»ne wiczenia 6 monitory cz. 2 Napisz monitor Bar synchronizuj cy prac barmana obsªuguj cego klientów przy kolistym barze z N stoªkami. Ka»dy klient realizuje nast

Bardziej szczegółowo

Lekcja 3 Banki i nowe przedmioty

Lekcja 3 Banki i nowe przedmioty Lekcja 3 Banki i nowe przedmioty Akademia im. Jana Dªugosza w Cz stochowie Banki przedmiotów Co ju» wiemy? co to s banki przedmiotów w Baltie potramy korzysta z banków przedmiotów mo»emy tworzy nowe przedmioty

Bardziej szczegółowo

Programowanie wspóªbie»ne

Programowanie wspóªbie»ne 1 Programowanie wspóªbie»ne wiczenia 2 semafory cz. 1 Zadanie 1: Producent i konsument z buforem cyklicznym type porcja; void produkuj(porcja &p); void konsumuj(porcja p); porcja bufor[n]; / bufor cykliczny

Bardziej szczegółowo

przewidywania zapotrzebowania na moc elektryczn

przewidywania zapotrzebowania na moc elektryczn do Wykorzystanie do na moc elektryczn Instytut Techniki Cieplnej Politechnika Warszawska Slide 1 of 20 do Coraz bardziej popularne staj si zagadnienia zwi zane z prac ¹ródªa energii elektrycznej (i cieplnej)

Bardziej szczegółowo

Egzaminy i inne zadania. Semestr II.

Egzaminy i inne zadania. Semestr II. Egzaminy i inne zadania. Semestr II. Poni»sze zadania s wyborem zada«ze Wst pu do Informatyki z egzaminów jakie przeprowadziªem w ci gu ostatnich lat. Ponadto doª czyªem szereg zada«, które pojawiaªy si

Bardziej szczegółowo

Zbiory i odwzorowania

Zbiory i odwzorowania Zbiory i odwzorowania 1 Sposoby okre±lania zbiorów 1) Zbiór wszystkich elementów postaci f(t), gdzie t przebiega zbiór T : {f(t); t T }. 2) Zbiór wszystkich elementów x zbioru X speªniaj cych warunek ϕ(x):

Bardziej szczegółowo

Liniowe równania ró»niczkowe n tego rz du o staªych wspóªczynnikach

Liniowe równania ró»niczkowe n tego rz du o staªych wspóªczynnikach Liniowe równania ró»niczkowe n tego rz du o staªych wspóªczynnikach Teoria obowi zuje z wykªadu, dlatego te» zostan tutaj przedstawione tylko podstawowe denicje, twierdzenia i wzory. Denicja 1. Równanie

Bardziej szczegółowo

Sortowanie bąbelkowe

Sortowanie 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ółowo

Ÿ1 Oznaczenia, poj cia wst pne

Ÿ1 Oznaczenia, poj cia wst pne Ÿ1 Oznaczenia, poj cia wst pne Symbol sumy, j, k Z, j k: k x i = x j + x j+1 + + x k. i=j Przykªad 1.1. Oblicz 5 i=1 2i. Odpowied¹ 1.1. 5 i=1 2i = 2 1 + 2 2 + 2 3 + 2 4 + 2 5 = 2 + 4 + 8 + 16 + 32 = 62.

Bardziej szczegółowo

Zestaw 1 ZESTAWY A. a 1 a 2 + a 3 ± a n, gdzie skªadnik a n jest odejmowany, gdy n jest liczb parzyst oraz dodawany w przeciwnym.

Zestaw 1 ZESTAWY A. a 1 a 2 + a 3 ± a n, gdzie skªadnik a n jest odejmowany, gdy n jest liczb parzyst oraz dodawany w przeciwnym. ZESTAWY A Zestaw 1 Organizacja plików: Wszystkie pliki oddawane do sprawdzenia nale»y zapisa we wspólnym folderze o nazwie b d cej numerem indeksu, umieszczonym na pulpicie. Oddajemy tylko ¹ródªa programów

Bardziej szczegółowo

Model obiektu w JavaScript

Model obiektu w JavaScript 16 marca 2009 E4X Paradygmat klasowy Klasa Deniuje wszystkie wªa±ciwo±ci charakterystyczne dla wybranego zbioru obiektów. Klasa jest poj ciem abstrakcyjnym odnosz cym si do zbioru, a nie do pojedynczego

Bardziej szczegółowo

x y x y x y x + y x y

x y x y x y x + y x y Algebra logiki 1 W zbiorze {0, 1} okre±lamy dziaªania dwuargumentowe,, +, oraz dziaªanie jednoargumentowe ( ). Dziaªanie x + y nazywamy dodawaniem modulo 2, a dziaªanie x y nazywamy kresk Sheera. x x 0

Bardziej szczegółowo

Kolejka priorytetowa. Często rozważa się kolejki priorytetowe, w których poszukuje się elementu minimalnego zamiast maksymalnego.

Kolejka 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ółowo

Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych.

Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych. Wykªad jest prowadzony w oparciu o podr cznik Analiza matematyczna 2. Denicje, twierdzenia, wzory M. Gewerta i Z. Skoczylasa. Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych. Denicja Mówimy,»e funkcja

Bardziej szczegółowo