Ile potrzeba matematyki, żeby zrozumieć prosty algorytm?

Podobne dokumenty
Oczekiwania w zakresie informatyki wobec kandydatów na studia w PWr

O stylu programowania

Informatyka na WPPT. prof. dr hab. Jacek Cichoń dr inż. Marek Klonowski

Analiza Algorytmów. Informatyka, WPPT, Politechnika Wroclawska. 1 Zadania teoretyczne (ćwiczenia) Zadanie 1. Zadanie 2. Zadanie 3

Informatyka szkolna z perspektywy uczelni

O potrzebie abstrakcyjnego myślenia

Problemy studentów na I roku

Optymalizacja. Przeszukiwanie lokalne

WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI

Algorytmy i struktury danych. Wykład 6 Tablice rozproszone cz. 2







Zał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)

3. Plan studiów PLAN STUDIÓW. Faculty of Fundamental Problems of Technology Field of study: MATHEMATICS

WYDZIAŁ BUDOWNICTWA LĄDOWEGO I WODNEGO

Zadanie 1 Przygotuj algorytm programu - sortowanie przez wstawianie.

Matematyka do liceów i techników Szczegółowy rozkład materiału Klasa III zakres rozszerzony 563/3/2014

Matematyka do liceów i techników Szczegółowy rozkład materiału Klasa III zakres rozszerzony

12. Przynależność do grupy przedmiotów: Blok przedmiotów matematycznych

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2016/2017

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Algorytmy i złożoność obliczeniowa. Wojciech Horzelski

Internet of Things. Jacek Cichoń Mirosław Kutyłowski. 1 października wyzwania i zagrożenia

Optymalizacja. Symulowane wyżarzanie

EGZAMIN MATURALNY OD ROKU SZKOLNEGO

Wręczenie Nagrody im. Witolda Lipskiego

Metody systemowe i decyzyjne w informatyce

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

INFORMATYKA PLAN STUDIÓW NIESTACJONARNYCH. Podstawy programowania Systemy operacyjne

Z-LOG-1004 Matematyka dyskretna Discrete mathematics. Przedmiot podstawowy Wybieralny polski Semestr III

Technologie informacyjne Wykład VII-IX

Koło Matematyczne klasy 2-3 GIM

Zakładane efekty kształcenia dla kierunku Wydział Telekomunikacji, Informatyki i Elektrotechniki

Szczegółowy rozkład materiału dla klasy 3b poziom rozszerzny cz. 1 - liceum

12. Przynależność do grupy przedmiotów: Blok przedmiotów matematycznych

Techniki optymalizacji

Finanse behawioralne; badanie skłonności poznawczych inwestorów

System wspomagania harmonogramowania przedsięwzięć budowlanych

Wymagania edukacyjne z matematyki Klasa III zakres rozszerzony

Zał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)

Z-LOG-1003 Logika Logics

PODSTAWY INFORMATYKI wykład 5.

WYDZIAŁ PODSTAWOWYCH PROBLEMÓW TECHNIKI KARTA PRZEDMIOTU

KARTA KURSU. Probability theory

zna metody matematyczne w zakresie niezbędnym do formalnego i ilościowego opisu, zrozumienia i modelowania problemów z różnych

2. Wymagania wstępne w zakresie wiedzy, umiejętności oraz kompetencji społecznych (jeśli obowiązują):

Podstawowe algorytmy i ich implementacje w C. Wykład 9

PRZEWODNIK PO PRZEDMIOCIE

WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI

Z-LOG-120I Badania Operacyjne Operations Research

POLITECHNIKA BIAŁOSTOCKA TEMAT: OPIS UŻYCIA KLASY WIPB WYDZIAŁ INFORMATYKI PRACA DYPLOMOWA MAGISTERSKA WYKONAWCA: GAL ANONIM PROMOTOR: JULIUSZ CEZAR

Rok akademicki: 2012/2013 Kod: JFM s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

FFT i dyskretny splot. Aplikacje w DSP

1 Wprowadzenie do algorytmiki

Algorytm selekcji Hoare a. Łukasz Miemus

Imię i nazwisko (e mail): Rok:. (2010/2011) Grupa: Ćw. 5: Pomiar parametrów sygnałów napięciowych Zaliczenie: Podpis prowadzącego: Uwagi:

Wymagania edukacyjne z matematyki Klasa III zakres podstawowy

PODSTAWY INFORMATYKI wykład 10.

Programowanie Proceduralne

Rachunek prawdopodobieństwa

Zagadnienia na egzamin poprawkowy z matematyki - klasa I 1. Liczby rzeczywiste

Wykład 5. Sortowanie w czasie liniowologarytmicznym

Egzamin / zaliczenie na ocenę*

Wykład Ćwiczenia Laboratorium Projekt Seminarium 30

Wstęp do programowania

Odniesienie symbol I [1] [2] [3] [4] [5] Efekt kształcenia

Matematyka zajęcia fakultatywne (Wyspa inżynierów) Dodatkowe w ramach projektu UE

Matematyka dyskretna - wykład - część Podstawowe algorytmy kombinatoryczne

XXII Krajowa Konferencja SNM

PODYPLOMOWE STUDIA ZAAWANSOWANE METODY ANALIZY DANYCH I DATA MINING W BIZNESIE

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

Modelowanie procesów współbieżnych

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Instrukcje sterujące. Programowanie komputerowe

Dydaktyka matematyki, IV etap edukacyjny (ćwiczenia) Ćwiczenia nr 7 Semestr zimowy 2018/2019

UNIWERSYTET ŁÓDZKI KIERUNEK CHEMIA - STUDIA STACJONARNE Specjalność nauczycielska w zakresie chemii i informatyki

Informatyka I stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny) podstawowy (podstawowy / kierunkowy / inny HES)

Analiza i Przetwarzanie Obrazów

KARTA PRZEDMIOTU. 1 Student ma wiedzę z matematyki wyższej Kolokwium Wykład, ćwiczenia L_K01(+) doskonalącą profesjonalny L_K03(+) warsztat logistyka.

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2014/2015

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

Informatyka 1. Złożoność obliczeniowa

Zał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)

Kierunek: Matematyka - inż., rok I specjalność: informatyczna

Zakładane efekty kształcenia dla kierunku Wydział Telekomunikacji, Informatyki i Elektrotechniki

Model procesu dydaktycznego

Metody systemowe i decyzyjne w informatyce

Wykład 2. Poprawność algorytmów

TEORETYCZNE PODSTAWY INFORMATYKI

Nowa podstawa programowa przedmiotu informatyka w szkole ponadpodstawowej

studia stacjonarne w/ćw zajęcia zorganizowane: 30/15 3,0 praca własna studenta: 55 Godziny kontaktowe z nauczycielem akademickim: udział w wykładach

Uniwersytet Śląski w Katowicach WYDZIAŁ MATEMATYKI, FIZYKI I CHEMII. Kierunek Matematyka. Studia stacjonarne i niestacjonarne I i II stopnia

KARTA KURSU. Kod Punktacja ECTS* 2

SYSTEM ZAPEWNIENIA OCENA EFEKTÓW JAKOŚCI KSZTAŁCENIA- KSZTAŁCENIA 2016/17. Politechnika Opolska Wydział Inżynierii Produkcji i Logistyki

Wyniki ankiety Co uczniowie myślą na temat szkoły

Elektrotechnika I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) Niestacjonarne (stacjonarne / niestacjonarne)

Transkrypt:

Ile potrzeba matematyki, żeby zrozumieć prosty algorytm? Marek Klonowski Marek.Klonowski@pwr.edu.pl Katedra Informatyki Wydział Podstawowych Problemów Techniki Politechnika Wrocławska 2 grudnia 2016 r. M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 1 / 17

O mnie Zainteresowania naukowe informatyka teoretyczna: bezpieczeństwo informacji (podpisy cyfrowe, anonimowa komunikacja), algorytmy rozproszone matematyka: probabilistyka Dydaktyka matematyka: rachunek prawdopodobieństwa, kombinatoryka analityczna informatyka: algorytmy zrandomizowane, algorytmy rozproszone, kryptografia doświadczenie w pracy z uczniami liceów M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 2 / 17

O mnie Zainteresowania naukowe informatyka teoretyczna: bezpieczeństwo informacji (podpisy cyfrowe, anonimowa komunikacja), algorytmy rozproszone matematyka: probabilistyka Dydaktyka matematyka: rachunek prawdopodobieństwa, kombinatoryka analityczna informatyka: algorytmy zrandomizowane, algorytmy rozproszone, kryptografia doświadczenie w pracy z uczniami liceów M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 2 / 17

Sortowanie szybkie (Quick Sort) -QS Rysunek: QS M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 3 / 17

Algorithm 1 QS pseudocode 1: QS(Tab, left, right) 2: if left < right then 3: select a PivotIndex 4: PivotNewIndex := partition(tab, left, right, PivotIndex) 5: QS(Tab, left, pivotnewindex - 1) 6: QS(Tab, pivotnewindex + 1, right) 7: end if M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 4 / 17

Algorithm 2 RQS pseudocode 1: RQS(Tab, left, right) 2: if left < right then 3: select a random PivotIndex 4: PivotNewIndex := partition(tab, left, right, PivotIndex) 5: RQS(Tab, left, pivotnewindex - 1) 6: RQS(Tab, pivotnewindex + 1, right) 7: end if M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 5 / 17

RQS - Analiza Pojęcia wstępne Wejście (Input) - to permutacja a random - po polsku: losowy z jednostajnym p-stwem RQS wywołuje RQS - abstrakcyjne i nieprzyjemnie (rekursja) Co chcemy analizować? Liczba porównań Q n - liczba porównań dla wejścia długości n M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 6 / 17

RQS - Analiza Pojęcia wstępne Wejście (Input) - to permutacja a random - po polsku: losowy z jednostajnym p-stwem RQS wywołuje RQS - abstrakcyjne i nieprzyjemnie (rekursja) Co chcemy analizować? Liczba porównań Q n - liczba porównań dla wejścia długości n M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 6 / 17

RQS - Analiza Pojęcia wstępne Wejście (Input) - to permutacja a random - po polsku: losowy z jednostajnym p-stwem RQS wywołuje RQS - abstrakcyjne i nieprzyjemnie (rekursja) Co chcemy analizować? Liczba porównań Q n - liczba porównań dla wejścia długości n M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 6 / 17

RQS - Analiza I Pojęcia wstępne Wejście (Input) - to permutacja a random - po polsku: losowy z jednostajnym p-stwem RQS wywołuje RQS - abstrakcyjne i nieprzyjemnie (rekursja) Co chcemy analizować? Liczba porównań Q n - oczekiwana liczba liczba porównań dla wejścia długości n (ciag) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 7 / 17

RQS - Analiza II Fundamentalne spostrzeżenie Co trzeba umieć? p-stwo warunkowe p-stwo całkowite Q n = (n 1) + 1 n 1 (Q k + Q n k 1 ) n k=0 Q 0 = Q 1 = 0 M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 8 / 17

RQS - Analiza II Fundamentalne spostrzeżenie Co trzeba umieć? p-stwo warunkowe p-stwo całkowite Q n = (n 1) + 1 n 1 (Q k + Q n k 1 ) n k=0 Q 0 = Q 1 = 0 M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 8 / 17

RQS - Analiza III Przekształcenia 1 Q n = (n 1) + 1 n 1 n (Q k + Q n k 1 ) k=0 2 Q n = (n 1) + 2 n 1 n Q k k=0 3 nq n = n(n 1) + 2 n 1 (Q k + Q n k 1 ) k=0 M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 9 / 17

RQS - Analiza III Przekształcenia 1 Q n = (n 1) + 1 n 1 n (Q k + Q n k 1 ) k=0 2 Q n = (n 1) + 2 n 1 n Q k k=0 3 nq n = n(n 1) + 2 n 1 (Q k + Q n k 1 ) k=0 M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 9 / 17

RQS - Analiza III Przekształcenia 1 Q n = (n 1) + 1 n 1 n (Q k + Q n k 1 ) k=0 2 Q n = (n 1) + 2 n 1 n Q k k=0 3 nq n = n(n 1) + 2 n 1 (Q k + Q n k 1 ) k=0 M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 9 / 17

RQS - Analiza IV Przekształcenia 1 nq n = 2(n 1) + (n + 1)Q n 1 2 Q n n+1 = 2 n 1 n(n+1) + Q n 1 n 3 F n := Qn n+1 4 F n = 2 n 1 n(n+1) + F n 1 = 2 n k 1 k(k+1) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 10 / 17

RQS - Analiza IV Przekształcenia 1 nq n = 2(n 1) + (n + 1)Q n 1 2 Q n n+1 = 2 n 1 n(n+1) + Q n 1 n 3 F n := Qn n+1 4 F n = 2 n 1 n(n+1) + F n 1 = 2 n k 1 k(k+1) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 10 / 17

RQS - Analiza IV Przekształcenia 1 nq n = 2(n 1) + (n + 1)Q n 1 2 Q n n+1 = 2 n 1 n(n+1) + Q n 1 n 3 F n := Qn n+1 4 F n = 2 n 1 n(n+1) + F n 1 = 2 n k 1 k(k+1) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 10 / 17

RQS - Analiza IV Przekształcenia 1 nq n = 2(n 1) + (n + 1)Q n 1 2 Q n n+1 = 2 n 1 n(n+1) + Q n 1 n 3 F n := Qn n+1 4 F n = 2 n 1 n(n+1) + F n 1 = 2 n k 1 k(k+1) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 10 / 17

RQS - Analiza V Przekształcenia 1 F n = 2 n 1 n(n+1) + F n 1 = 2 n 2 k 1 Trik : k(k+1) = 2 1+k 1 k 3 F n = 4 n 1 1+k 2 n 4 H n := n 1 k 1 k k 1 k(k+1) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 11 / 17

RQS - Analiza V Przekształcenia 1 F n = 2 n 1 n(n+1) + F n 1 = 2 n 2 k 1 Trik : k(k+1) = 2 1+k 1 k 3 F n = 4 n 1 1+k 2 n 4 H n := n 1 k 1 k k 1 k(k+1) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 11 / 17

RQS - Analiza V Przekształcenia 1 F n = 2 n 1 n(n+1) + F n 1 = 2 n 2 k 1 Trik : k(k+1) = 2 1+k 1 k 3 F n = 4 n 1 1+k 2 n 4 H n := n 1 k 1 k k 1 k(k+1) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 11 / 17

RQS - Analiza V Przekształcenia 1 F n = 2 n 1 n(n+1) + F n 1 = 2 n 2 k 1 Trik : k(k+1) = 2 1+k 1 k 3 F n = 4 n 1 1+k 2 n 4 H n := n 1 k 1 k k 1 k(k+1) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 11 / 17

RQS - Analiza VI Przekształcenia 1 Q n = (n + 1)(4H n+1 2H n 4) 2 H n = ln n + γ + 1 2n + O ( 1 n 2 ) AM + logarytmy 3 Q n = 2n(ln n + γ 2) + 2 ln n + 2γ + 1 + O ( 1 n ) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 12 / 17

RQS - Analiza VI Przekształcenia 1 Q n = (n + 1)(4H n+1 2H n 4) 2 H n = ln n + γ + 1 2n + O ( 1 n 2 ) AM + logarytmy 3 Q n = 2n(ln n + γ 2) + 2 ln n + 2γ + 1 + O ( 1 n ) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 12 / 17

RQS - Analiza VI Przekształcenia 1 Q n = (n + 1)(4H n+1 2H n 4) 2 H n = ln n + γ + 1 2n + O ( 1 n 2 ) AM + logarytmy 3 Q n = 2n(ln n + γ 2) + 2 ln n + 2γ + 1 + O ( 1 n ) M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 12 / 17

RQS - Analiza VI Końcowy wynik Q n = 2n(ln n + γ 2) + 2 ln n + 2γ + 1 + O ( ) 1 n Rysunek: Bład oszacowania Q n M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 13 / 17

Czy warto? Anonimowy głos: Nie warto się uczyć algorytmów. Wszystkie algorytmy sa już zaimplementowane. randomizedquicksort.java Potrzeba znać aby dostać dobra pracę w IT Obecnie rynek pracy w IT jest bardzo dobry. Przyszłość: Chiny, Indie, Ukraina, Białoruś M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 14 / 17

Czy warto? Anonimowy głos: Nie warto się uczyć algorytmów. Wszystkie algorytmy sa już zaimplementowane. randomizedquicksort.java Potrzeba znać aby dostać dobra pracę w IT Obecnie rynek pracy w IT jest bardzo dobry. Przyszłość: Chiny, Indie, Ukraina, Białoruś M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 14 / 17

Czy warto? Anonimowy głos: Nie warto się uczyć algorytmów. Wszystkie algorytmy sa już zaimplementowane. randomizedquicksort.java Potrzeba znać aby dostać dobra pracę w IT Obecnie rynek pracy w IT jest bardzo dobry. Przyszłość: Chiny, Indie, Ukraina, Białoruś M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 14 / 17

Czy warto? Anonimowy głos: Nie warto się uczyć algorytmów. Wszystkie algorytmy sa już zaimplementowane. randomizedquicksort.java Potrzeba znać aby dostać dobra pracę w IT Obecnie rynek pracy w IT jest bardzo dobry. Przyszłość: Chiny, Indie, Ukraina, Białoruś M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 14 / 17

Czy warto? Anonimowy głos: Nie warto się uczyć algorytmów. Wszystkie algorytmy sa już zaimplementowane. randomizedquicksort.java Potrzeba znać aby dostać dobra pracę w IT Obecnie rynek pracy w IT jest bardzo dobry. Przyszłość: Chiny, Indie, Ukraina, Białoruś M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 14 / 17

Temat przewodni: O potrzebie innowacyjnego kształcenia uczniów i studentów Co MSZ jest istotne Dobre rozumienie pojęć, nie schematy, abstrakcja Synergia: matematyka informatyka M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 15 / 17

Temat przewodni: O potrzebie innowacyjnego kształcenia uczniów i studentów Co MSZ jest istotne Dobre rozumienie pojęć, nie schematy, abstrakcja Synergia: matematyka informatyka M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 15 / 17

Temat przewodni: O potrzebie innowacyjnego kształcenia uczniów i studentów Co MSZ jest istotne Dobre rozumienie pojęć, nie schematy, abstrakcja Synergia: matematyka informatyka M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 15 / 17

RQS - Analiza VI Rysunek: x i log n M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 16 / 17

Kontakt: email: Marek.Klonowski@pwr.edu.pl WWW: http://cs.pwr.edu.pl/klonowski/ Dziękuję M. Klonowski (KI WPPT PWr) Matematyka a Informatyka 2 grudnia 2016 r. 17 / 17