TECHNIKI ALGORYTMICZNE przybliżone i dokładne

Podobne dokumenty
RÓŻNORODNE ALGORYTMY OBLICZEŃ I ICH KOMPUTEROWE REALIZACJE

PROSTE RACHUNKI WYKONYWANE ZA POMOCĄ KOMPUTERA

WYSZUKIWANIE I PORZĄDKOWANIE INFORMACJI

PORZĄDEK WŚRÓD INFORMACJI

ALGORYTMY POSZUKIWANIA I PORZĄDKOWANIA ELEMENTY JĘZYKA PROGRAMOWANIA

Algorytmy i struktury danych. Co dziś? Tytułem przypomnienia metoda dziel i zwyciężaj. Wykład VIII Elementarne techniki algorytmiczne

Wybrane wymagania dla informatyki w gimnazjum i liceum z podstawy programowej

Algorytmy i struktury danych. Wykład 4

Programowanie od pierwszoklasisty do maturzysty. Grażyna Koba

Luty 2001 Algorytmy (7) 2000/2001

Znajdowanie wyjścia z labiryntu

TEORETYCZNE PODSTAWY INFORMATYKI

WYMAGANIA EGZAMINACYJNE Egzamin maturalny z INFORMATYKI

Algorytm - pojęcie algorytmu, sposób zapisu, poziom szczegółowości, czynności proste i strukturalne. Pojęcie procedury i funkcji.

Klasa 2 INFORMATYKA. dla szkół ponadgimnazjalnych zakres rozszerzony. Założone osiągnięcia ucznia wymagania edukacyjne na. poszczególne oceny

Piotr Chrząstowski-Wachtel Uniwersytet Warszawski. Al Chwarizmi i trzy algorytmy Euklidesa

2.1. Duszek w labiryncie

Wymagania edukacyjne i sposoby sprawdzania edukacyjnych osiągnięć uczniów z informatyki - klasy II zakres rozszerzony

CZY WSZYSTKO MOŻNA POLICZYĆ NA KOMPUTERZE

Szczegółowy program kursów szkoły programowania Halpress

Przeszukiwanie z nawrotami. Wykład 8. Przeszukiwanie z nawrotami. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 238 / 279

2.8. Algorytmy, schematy, programy

Programowanie w VB Proste algorytmy sortowania

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

KOŁO MATEMATYCZNE LUB INFORMATYCZNE - klasa III gimnazjum, I LO

Algorytmy komputerowe. dr inŝ. Jarosław Forenc

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

KONSPEKT ZAJĘĆ KOŁA INFORMATYCZNEGO LUB MATEMATYCZNEGO W KLASIE III GIMNAZJUM LUB I LICEUM ( 2 GODZ.)

Sortowanie danych. Jolanta Bachan. Podstawy programowania

Algorytmy w teorii liczb

Roman Mocek Zabrze Opracowanie zbiorcze ze źródeł Scholaris i CKE

CZY WSZYSTKO MOŻNA POLICZYĆNA KOMPUTERZE

kształcenia pozaszkolnego WMiI Uni Wrocław, WMiI UMK Toruń

Zadanie 1. Test (6 pkt) Zaznacz znakiem X w odpowiedniej kolumnie P lub F, która odpowiedź jest prawdziwa, a która fałszywa.

prowadzący dr ADRIAN HORZYK /~horzyk tel.: Konsultacje paw. D-13/325

Podstawy programowania. Wykład: 13. Rekurencja. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Programowanie dynamiczne i algorytmy zachłanne

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja I

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je.

Heurystyczne metody przeszukiwania

Informatyka A. Algorytmy

Wykład IV Algorytmy metody prezentacji i zapisu Rzut oka na język PASCAL

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja II

Analiza algorytmów zadania podstawowe

Algorytmika i pseudoprogramowanie

3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki.

Aktywizacja uczniów w ramach kształcenia pozaszkolnego. Maciej M. Sysło WMiI Uni Wrocław, WMiI UMK Toruń

FUNKCJA REKURENCYJNA. function s(n:integer):integer; begin if (n>1) then s:=n*s(n-1); else s:=1; end;

Podejście zachłanne, a programowanie dynamiczne

Struktury danych i złożoność obliczeniowa Wykład 2. Prof. dr hab. inż. Jan Magott

Wymagania edukacyjne i sposoby sprawdzania edukacyjnych osiągnięć uczniów z informatyki - klasy II zakres rozszerzony

Luty 2001 Algorytmy (1) 2000/2001 1

Złożoność obliczeniowa zadania, zestaw 2

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa

Programowanie proceduralne INP001210WL rok akademicki 2017/18 semestr letni. Wykład 3. Karol Tarnowski A-1 p.

Jeszcze o algorytmach

EGZAMIN MATURALNY Z INFORMATYKI

Opis problemu i przedstawienie sposobu jego rozwiązania w postaci graficznej. Gimnazjum nr 3 im. Jana Pawła II w Hrubieszowie 1

EGZAMIN MATURALNY Z INFORMATYKI

Program telewizyjny emisji filmów w 4 stacjach telewizyjnych: Telewizja / stacja Film i godziny jego emisji Czas trwania emisji filmu

Temat: Algorytmy zachłanne

Technologie Informatyczne Wykład VII

Rekurencja. Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów.

Scenariusz lekcji. podać definicję metody zachłannej stosowanej w algorytmie; wymienić cechy algorytmów zachłannych;

Technologie informacyjne Wykład VII-IX

Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 1 WSTĘP DO INFORMATYKI

Algorytmy i str ruktury danych. Metody algorytmiczne. Bartman Jacek

EGZAMIN MATURALNY W ROKU SZKOLNYM 2017/2018 INFORMATYKA

PRZEDMIOTOWY SYSTEM OCENIANIA INFORMATYKA.

1. Algorytmika. WPROWADZENIE DO ALGORYTMIKI Wprowadzenie do algorytmów. Pojęcie algorytmu.

Uwaga: Akceptowane są wszystkie odpowiedzi merytorycznie poprawne i spełniające warunki zadania.

5. Rekurencja. Przykłady

Definicje. Algorytm to:

KARTA MODUŁU KSZTAŁCENIA

Algorytmy i struktury danych

ALGORYTMY I STRUKTURY DANYCH

Kurs MATURA Z INFORMATYKI

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Algorytmy i struktury danych, C3

Algorytm. a programowanie -

ZADANIE 1. Ważenie (14 pkt)

PRZEDMIOTOWY SYSTEM OCENIANIA INFORMATYKA. KLASA 2F

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 9 Rekurencja

EGZAMIN MATURALNY W ROKU SZKOLNYM 2017/2018 INFORMATYKA

Algorytmy. Programowanie Proceduralne 1

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

Strategia "dziel i zwyciężaj"

Wszechnica Informatyczna: Algorytmika i programowanie Różnorodne algorytmy obliczeń i ich komputerowe realizacje. Maciej M Sysło

Scenariusz lekcji opartej na programie Program nauczania informatyki w gimnazjum DKW /99

Programowanie dynamiczne

Złożoność obliczeniowa algorytmu ilość zasobów komputera jakiej potrzebuje dany algorytm. Pojęcie to

Sposoby przedstawiania algorytmów

Wstęp do programowania

Sortowanie przez scalanie

Komputery, obliczenia, algorytmy Tianhe-2 (MilkyWay-2), system Kylin Linux, Tflops, kw

Co to jest algorytm? przepis prowadzący do rozwiązania zadania, problemu,

EGZAMIN MATURALNY 2012 INFORMATYKA

Programowanie dynamiczne cz. 2

Poprawność semantyczna

Rekurencja (rekursja)

ANALIZA ALGORYTMÓW. Analiza algorytmów polega między innymi na odpowiedzi na pytania:

Transkrypt:

TECHNIKI ALGORYTMICZNE przybliżone i dokładne WPROWADZENIE DO ALGORYTMIKI Maciej M. Sysło Uniwersytet Wrocławski Uniwersytet UMK w Toruniu syslo@ii.uni.wroc.pl informatyka + 2

Algorytm, algorytmika Algorytm opis rozwiązania krok po kroku postawionego problemu lub sposobu osiągnięcia jakiegoś celu Pierwszy algorytm algorytm Euklidesa 300 p.n.e algorytm od Muhammad ibn Musa al-chorezmi IX w. Algorytmika dziedzina zajmująca się algorytmami i ich własnościami informatyka + 3

Algorytmy a informatyka Informatyka jedna z definicji: dziedzina wiedzy i działalności zajmująca się algorytmami Czy zajmuje się też algorytmami kulinarnymi? Donald E. Knuth: Będziemy uczyć komputery, czyli programować je! Ralf Gomory (IBM): Mówi się często, że człowiek dotąd nie zrozumie czegoś, zanim nie nauczy tego kogoś innego. W rzeczywistości, człowiek nie zrozumie czegoś (algorytmu) naprawdę, zanim nie zdoła nauczyć tego komputera. Najlepszym sposobem przyspieszania komputerów jest obarczanie ich mniejszą liczbą działań (szybszymi algorytmami) informatyka + 4

Algorytmiczne rozwiązywanie problemu Dla problemu chcemy otrzymać rozwiązanie komputerowe, które jest: zrozumiałe dla każdego, kto zna problemu poprawne, czyli spełnia specyfikację (opis) problemu efektywne, czyli nie marnuje czasu i pamięci komputera Metoda rozwiązywania: analiza sytuacji problemowej sporządzenie specyfikacji: wykaz danych, wyników i relacji projekt rozwiązania komputerowa realizacja rozwiązania implementacja testowanie poprawności rozwiązania dokumentacja i prezentacja rozwiązania informatyka + 5

Rozwiązywanie problemów z pomocą komputerów Objaśnienie dwóch terminów: Problem: problem, gdy nie podano nam, jak należy go rozwiązać, ale wiemy wystarczająco, by poradzić sobie z nim a więc, problem jest dla każdego nie tylko dla orłów Programowanie: komputery wykonują tylko programy cokolwiek uruchamiamy na komputerze: Google, dokument w Word, arkusz w Excel, naciśnięcie klawisza jest programem każdy widoczny i niewidoczny efekt działania komputera to wynik działania jakiegoś programu Konkluzja: powinniśmy lepiej poznać programowanie komputerów informatyka + 6

Myślenie algorytmiczne Myślenie komputacyjne (ang. computational thinking) Reklama firmy IBM z 1924 roku Komputer to maszyna do myślenia!!! informatyka + 7

Techniki algorytmiczne przybliżone i dokładne idee W wielu sytuacjach postępujemy intuicyjnie, podejmując decyzje, które wydają się nam najlepsze, chociaż nie potrafimy tego uzasadnić podejście zachłanne Jednak czasem musimy przejrzeć wszystkie możliwości dobrze jest mieć pewność, że przeglądamy (pośrednio lub bezpośrednio) wszystkie, ale bez powtórzeń metoda przeszukiwania z nawrotami Stara zasada korzystać z tego, co już znamy strategia dziel i zwyciężaj Komputery staramy się używać wtedy, gdy bez niech nie potrafimy sobie poradzić. A najlepiej, gdyby komputery wykonywały za nas dużą część roboty. Rekurencja czyli jak zwalić robotę na komputer informatyka + 8

Techniki algorytmiczne przybliżone i dokładne Plan zajęć Podejście zachłanne: wydawanie reszty zmartwienie napalonego kinomana pakowanie najcenniejszego plecaka najdłuższa droga w piramidzie Przeszukiwanie z nawrotami poszukiwanie wyjścia z labiryntu rozmieszczanie hetmanów na szachownicy Strategia dziel i zwyciężaj poszukiwanie elementów w zbiorze uporządkowanym Rekurencja wyprowadzanie liczb od początku szybkie potęgowanie algorytm Euklidesa informatyka + 9

Metoda zachłanna: wydawanie reszty problem Problem Reszty. Dane: nominały, np. 1 gr, 2 gr, 5 gr, K kwota do wydania Wynik: Utworzyć K z najmniejszej liczby banknotów i monet Dyskusja: jak wydają sprzedawcy? jaki mamy pomysł? Dla sprzedawcy to także dobre kryterium ma mniej okazji, by się pomylić czy potrafimy uzasadnić, że nasz pomysł da najlepsze rozwiązanie? Konkluzja algorytm zachłanny: Wydawaj sukcesywnie, zawsze możliwie największy nominał banknotu lub monety informatyka + 10

Metoda zachłanna: wydawanie reszty w arkuszu Rozwiązanie w arkuszu w arkuszu można również wykonywać algorytmy Ćwiczenie na warsztatach: utworzyć taki arkusz informatyka + 11

Warsztaty Algorytm, język programowania, komputer Proces komputerowej realizacji algorytmu: Opis algorytmu Zapis w języku programowania (Pascal, C++) Przetłumaczenie na język zrozumiały przez komputer Wykonanie Testowanie Prezentacja rozwiązania informatyka + 12

Metoda zachłanna: wydawanie reszty program Program Zachlanna_reszta_PL; var i,ile,kwota_int:integer; kwota :real; Nominały w groszach nominal:array[1..14] of integer =(20000,10000,5000,2000,1000,500,200,100,50,20,10,5,2,1); reszta :array[1..14] of integer; begin write('kwota'); read(kwota); kwota_int:=round(kwota*100); for i:=1 to 14 do begin ile:=kwota_int div nominal[i]; reszta[i]:=ile; kwota_int:=kwota_int-ile*nominal[i] end; for i:=1 to 8 do writeln(nominal[i] div 100,' zl.: ',reszta[i]); for i:=9 to 14 do writeln(nominal[i],' gr.: ',reszta[i]) end. Deklaracje zmiennych Czytanie kwoty Zamiana kwoty na grosze Obliczanie wielkości kolejnych nominałów Wyprowadzenie wyników informatyka + 13

Metoda zachłanna: wydawanie reszty jak dobrze? Pytanie: jak dobry jest algorytm zachłanny? Czy zawsze tworzy resztę z najmniejszej liczby banknotów i monet? Sytuacje: brakuje niektórych nominałów w kasie, np. 5 gr. i 10 gr. pojawia się nowa moneta, np. 21 gr. Fakt: Istniejące w świecie nominały, gdy tylko jest ich dostatecznie dużo w kasie, gwarantują, że algorytm zachłanny daje zawsze najmniejszą liczbę banknotów i monet informatyka + 14

Metoda zachłanna: zmartwienie kinomana Sytuacja: Dane: program filmów w Multikinie na dany dzień Wynik: Kinoman chce jednego dnia zobaczyć jak najwięcej filmów w Multikinie 1 X 2 X X X 3 X X 4 X Strategia: Wybieraj filmy, które kończą się możliwie jak najwcześniej Uzasadnienie: Pozostaje więcej czasu na następne filmy Konkluzja: Jest to optymalny algorytm. informatyka + 15

Metoda zachłanna: pakowanie plecaka Ogólny problem plecakowy Dane: n rzeczy (towarów, produktów itp.), w nieograniczonej ilości: i-ta rzecz waży w i jednostek i ma wartość p i : W maksymalna pojemność plecaka. Wynik: ilości poszczególnych rzeczy (mogą być zerowe), których całkowita waga nie przekracza W i których sumaryczna wartość jest największa wśród wypełnień plecaka rzeczami o wadze nie przekraczającej W. Decyzyjny problem plecakowy 0-1 (zero-jedynkowy) Rzeczy są tylko w pojedynczych ilościach decyzja: bierzemy albo nie informatyka + 16

Metoda zachłanna: pakowanie plecaka Przykład: wartość towaru: waga towaru: Pojemność plecaka Zachłanne kryteria wyboru rzeczy do plecaka: 1. Najcenniejsze najpierw: 7 x nr 5 + 1 x nr 4 = 7x10 + 1x7 = 77 2. Najlżejsze najpierw: 23 x nr 6 = 23x2 = 46 3. Najcenniejsze w stosunku do swojej wagi najpierw, czyli w kolejności nierosnących wartości ilorazu p i / w i Kolejność: 7/2, 10/3, 4/2, 2/1, 5/3, 6/6 11 x nr 4 + 1 x nr 6 = 11x7 + 1x2 = 79 NAJLEPSZE OPTYMALNE: 10 x nr 4 + 1 x nr 5 = 10x7 + 1x10 = 80 Żadne zachłanne nie jest optymalne na ogół tak jest informatyka + 17

Metoda zachłanna: najdłuższa droga z piramidy Dane: Piramida liczb: 3 Droga z korzenia 5 7 8 2 5 4 5 7 5 3 6 3 4 2 Wynik: Znaleźć najdłuższą drogę z korzenia Algorytm zachłanny. 1. Zacznij w korzeniu 2. Wybieraj większą liczbę poniżej. Długość drogi zachłannej: niebieska: 3+7+5+7+4 = 26 Długość drogi najdłuższej: różowa: 3+5+8+5+6 = 27 informatyka + 18

Przeszukiwanie z nawrotami Opis sytuacji: Duża przestrzeń możliwych rozwiązań. Nie znamy innej metody znalezienia rozwiązania niż przeszukanie tej przestrzeni Decydujemy się przeszukać całą przestrzeń, ale chcemy to zrobić systematycznie każde rozwiązanie powinno się pojawić, bezpośrednio lub pośrednio, ale żadne nie więcej niż raz Może nas interesować znalezienie wszystkich rozwiązań Przykłady: Wychodzenie z labiryntu duża liczba możliwych dróg Ustawianie figur na szachownicy duża liczba możliwych układów informatyka + 19

Przeszukiwanie z nawrotami: wychodzenie z labiryntu Opis sytuacji: Labirynt: pola = kwadraty, brak zamkniętych komnat Cel: znaleźć wyjście z dowolnego pola Algorytm: 1. Wybieraj kierunki w kolejności: G (do góry), L (w lewo), P (w prawo), D (do dołu) patrzymy zawsze przed siebie 2. Jeśli nie ma przejścia cofnij się na pole, z którego przyszedłeś. Nawrót informatyka + 20

Przeszukiwanie z nawrotami: wychodzenie z labiryntu Droga z pola 4a: G-3a, G-2a, G-1a do Góry już nie można iść, ale można iść w Prawo P-1b z tego pola nie ma już przejść G, L, P cofamy się B-1a także nie ma innego przejścia cofamy się B-2a podobnie, cofamy się B-3a podobnie, cofamy się z 3a można iść jeszcze w Prawo P-3b istnieje przejście w Lewo L-2b istnieje przejście w Prawo P-2c istnieje przejście w Lewo WYJŚCIE z labiryntu informatyka + 21

Przeszukiwanie z nawrotami: rozmieszczanie hetmanów na szachownicy Opis sytuacji: Szachownica: n x n, hetman atakuje po wszystkich liniach Cel: ustawić jak największą liczbę nie atakujących się hetmanów Algorytm: Poruszamy się kolumnami, od lewej do prawej, a w kolumnach od góry. 1. Ustaw hetmana w danej kolumnie na nie atakowanym polu. 2. Jeśli nie można, to cofnij się do poprzedniej kolumny i wybierz Nawrót następne pole informatyka + 22

Przeszukiwanie z nawrotami: rozmieszczanie hetmanów na szachownicy a4 b2: brak pola w c nawrót do b: b1 c3: brak pola w d nawrót a: a3 b1 c4 d2!!! informatyka + 23

Przeszukiwanie z nawrotami: rozmieszczanie hetmanów na szachownicy Drzewo poszukiwania ustawień: Ustawienie 4 hetmanów Odbicie symetryczne Oś symetrii drzewa informatyka + 24

Strategia dziel i zwyciężaj przykład poszukiwanie elem. w zbiorze uporządkowanym Zgadywana liczba: 17 w przedziale [1 : 20] Metoda: połowienia przedziału Kolejne kroki: strzałka wskazuje wybór; kolor czerwony ciąg do przeszukania: informatyka + 25

Techniki algorytmiczne rekurencja Myślenie rekurencyjne: przykłady z życia: jedzenie, tańczenie wyprowadzanie liczb od początku Wieże Hanoi liczby Fibonacciego szybkie potęgowanie algorytm Euklidesa Rekurencyjny algorytm: Korzyści: Rozwiązując problem odwołuje się do siebie Część pracy zwalamy na komputer! informatyka + 26

Rekurencja przykłady z życia Jedzenie kaszki z talerza A. Jerszow Jedz kaszkę; jeśli talerz jest pusty to koniec jedzenia Warunek początkowy zatrzymuje wywołania w przeciwnym razie weź łyżkę kaszki; Jedz kaszkę Procedura rekurencyjna wywołuje siebie Taniec Tańcz; jeśli nie gra muzyka to koniec tańczenia w przeciwnym razie zrób krok; Tańcz informatyka + 27

Rekurencja wyprowadzanie kolejnych cyfr liczby Liczbę 3045 drukuj w kolejności cyfr: 3 0 4 5 Algorytm drukowania cyfr liczby 3045 1. Najpierw drukuj cyfry liczby 304 2. Później drukuj cyfrę 5 Zauważmy: możemy zastosować ten sam algorytm ale do liczby 304 REKURENCJA Potrzebne są dwie operacje: reszta z dzielenia mod: np. 3045 mod 10 = 5 dzielenie całkowite div: np. 3045 div 10 = 304 Liczba 304 to: 3045 div 10 = 304 Cyfra 5 to reszta: 3045 mod 10 = 5 informatyka + 28

Rekurencja wyprowadzanie kolejnych cyfr liczby KolejnaCyfra (m) if m < 10 then write (m) else begin end Uwagi: KolejnaCyfra (m div 10); write (m mod 10) Warunek początkowy gdy liczba ma jedną cyfrę. Wywołanie rekurencyjne dla liczby bez ostatniej cyfry Drukowanie ostatniej cyfry 1. Można zastąpić 10 przez 2 i otrzymamy kolejne cyfry binarne, od najbardziej znaczącej 2. Po zmianie kolejności poleceń drukowanie cyfr od końca informatyka + 29

Rekurencja wyprowadzanie kolejnych cyfr liczby Wywołania rekurencyjne KolejnaCyfra (3045) 304 = 3045 div 10 KolejnaCyfra (304) write (3045 mod 10) = 5 KolejnaCyfra (30) write (304 mod 10) = 4 Kolejno drukowane cyfry KolejnaCyfra (3) write (30 mod 10) = 0 write (3) = 3 Powrót z wywołań rekurencyjnych informatyka + 30

Rekurencja inny przykład Wieże Hanoi Hanoi (n, A, B, C) {z A na B za pomocą C} if n = 0 then nic nie rób else begin Procedura rekurencyjna wywołuje siebie Warunek początkowy zatrzymuje wywołania end Hanoi (n 1, A, C, B); Największy krążek z A na B; Hanoi (n 1, C, B, A) informatyka + 31

Rekurencja inny przykład króliki Fibonacciego F(n) liczba par królików po n miesiącach F(1)=1 1 2 F(2)=1 3 n 2 n 1 Rekurencja: n Warunki początkowe dla n > 2: Króliki, które przeżywają Króliki, urodzone przez pary żyjące ponad miesiąc F(n) = F(n-1) + F(n-2) Liczby Fibonacciego: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, informatyka + 32

Rekurencja inne przykłady Podnoszenie do potęgi Potega (x, n) { x n } if n = 1 then Potega := x else if n parzyste then Potega := Potega (x, n/2)^2 {x n = (x n/2 ) 2 } else Potega := Potega (x, n 1)*x Uwaga. Obliczenia przebiegają tak, jakby n było liczbą binarną zapisaną w postaci schematu Hornera {x n = (x n 1 )x} Algorytmy sortowania demo w programie Sortowanie Sortowanie przez scalanie Sortowanie szybkie informatyka + 33

Rekurencja inne przykłady Algorytm Euklidesa NWD(m,n) {zakładamy m n} if m = 0 then NWD := n else NWD := NWD(n mod m, m) Reszta z zdzielenia n przez m. Wartość wielomianu stopnia n w punkcie x w(n,x) if n = 0 then w := a 0 else w := w(n 1, x) *x + a n informatyka + 34

Pokrewne zajęcia w Projekcie Informatyka + Wykład+Warsztaty (Wszechnica Poranna): Wprowadzenie do algorytmiki i programowania wyszukiwanie i porządkowanie informacji Proste rachunki wykonywane za pomocą komputera. Techniki algorytmiczne przybliżone (heurystyczne) i dokładne. Wykłady (Wszechnica Popołudniowa): Czy wszystko można policzyć na komputerze? Porządek wśród informacji kluczem do szybkiego wyszukiwania. Dlaczego możemy się czuć bezpieczni w sieci, czyli o szyfrowaniu informacji. Znajdowanie najkrótszych dróg, najniższych drzew, najlepszych małżeństw informatyka + 35

Pokrewne zajęcia w Projekcie Informatyka + Kursy (24 godz.) Wszechnica na Kołach: Algorytmy poszukiwania i porządkowania. Elementy języka programowania Różnorodne algorytmy obliczeń i ich komputerowe realizacje Grafy, algorytmy grafowe i ich komputerowe realizacje Kursy (24 godz.) Kuźnia Informatycznych Talentów KIT dla Orłów: Przegląd podstawowych algorytmów Struktury danych i ich wykorzystanie Zaawansowane algorytmy Tendencje Wykłady Algorytmy w Internecie, K. Diks Czy P = NP, czyli jak wygrać milion dolarów w Sudoku, J. Grytczuk Między przeszłością a przyszłość informatyki, M.M Sysło informatyka + 36