Ta witryna wykorzystuje pliki cookie, dowiedz się więcej Zgadzam się
Algorytmy poszukiwania i porządkowania. Elementy języka programowania


O Kursie

Cel kursu
Celem kursu jest wprowadzenie do algorytmiki i programowania.

Tematyka kursu
Ten kurs jest wprowadzeniem do algorytmiki i programowania. Na przykładach bardzo prostych problemów, takich jak: znajdowanie największego i/lub najmniejszego elementu w ciągu, wyłanianie zwycięzcy i drugiego zawodnika w turnieju, porządkowanie ciągu liczby oraz poszukiwanie elementów w zbiorach nieuporządkowanych i uporządkowanych, przedstawione jest podejście do rozwiązywania problemów w postaci algorytmów i do ich komputerowej implementacji w języku Pascal lub C++. Omawiane są m.in. specyfikacja problemu, schematy blokowe algorytmów, podstawowe struktury danych (ciąg i tablica) oraz pracochłonność algorytmów.
Część praktyczna zajęć jest poświęcona wprowadzaniu podstawowych instrukcji języka programowania (iteracyjnych i warunkowych oraz procedury i funkcji niestandardowej), wystarczających do zaprogramowania i uruchomienia komputerowych realizacji omówionych algorytmów. Język programowania służy głównie do zapisywania i testowania rozwiązań rozważanych problemów, a nie jest celem zajęć samym w sobie. Wykorzystywane jest również oprogramowanie edukacyjne, ułatwiające zrozumienie działania algorytmów i umożliwiające wykonywanie eksperymentów z algorytmami bez konieczności ich programowania. Przytoczono ciekawe przykłady zastosowań omawianych zagadnień.
Dalsza część zajęć jest poświęcona bardziej zaawansowanym algorytmom poszukiwania i porządkowania zbioru liczb, wykorzystującym m.in. metodę dziel i zwyciężaj oraz rekurencję. Ostatnia część kursu jest rozszerzeniem zakresu tematycznego kursu o bardziej złożone algorytmy porządkowania, jak i doskonaleniem poznanego języka programowania przy komputerowej realizacji algorytmów i porównywania ich praktycznej efektywności. Efektem kursu będzie utworzona przez każdego z uczestników biblioteka własnych komputerowych realizacji poznanych algorytmów.
Rozważania są prowadzone na elementarnym poziomie i do ich wysłuchania oraz wzięcia udziału w kursie wystarczy znajomość informatyki wyniesiona z gimnazjum. Te zajęcia są adresowane do wszystkich uczniów w szkołach ponadgimnazjalnych, zgodnie bowiem z nową podstawą programową, kształceniem umiejętności algorytmicznego rozwiązywania problemów mają być objęci wszyscy uczniowie.
W tych materiałach dla słuchaczy algorytmy są zapisywane w języku Pascal. Odpowiednie wersje w języku C++ będą przekazane słuchaczom na zajęciach.

  1. Wprowadzenie
  2. Warm – up – rozgrzewka
  3. Przeszukiwanie zbioru
    • 3.1. Specyfikacja problemu i algorytm
    • 3.2. Schematy blokowe algorytmu Min
    • 3.3. Komputerowe realizacje algorytmu Min
    • 3.4. Pracochłonność (złożoność) algorytmu Min
  4. Kompletowanie podium zwycięzców turnieju
  5. Jednoczesne znajdowanie najmniejszego i największego elementu
    • 5.1. Rozwiązanie metodą dziel i zwyciężaj
    • 5.2. Implementacja i pracochłonność jednoczesnego znajdowania minimum i maksimum
    • 5.3. Dwa ciekawe zadania
  6. Problem porządkowania – porządkowanie przez wybór
    • 6.1. Problem porządkowania
    • 6.2. Porządkowanie kilku elementów
    • 6.3. Porządkowanie przez wybór
    • 6.4. Inne algorytmy porządkowania
  7. Porządkowanie przez zliczanie
  8. Poszukiwanie informacji w zbiorze
    • 8.1. Poszukiwanie elementu w zbiorze nieuporządkowanym
    • 8.2. Poszukiwanie elementu w zbiorze uporządkowanym
  9. Dziel i zwyciężaj, rekurencja
    • 9.1. Problem Min – i – Max raz jeszcze
    • 9.2. Sortowanie przez scalanie
    • 9.3. Sortowanie szybkie
    • 9.4. Sortowanie – podsumowanie
  10. Algorytm, algorytmika i algorytmiczne rozwiązania problemów

Struktura kursu
Kurs składa się z następujących elementów:

  1. Zeszyt dydaktyczny do kursu - w formacie PDF,
  2. Prezentacja PowerPoint do kursu - w formacie .ppt,
  3. Materiały dodatkowe,
  4. Test z pytaniami sprawdzającymi wiedzę

Sposób realizacji kursu
Kurs jest przeznaczony do realizacji w trybie samokształcenia lub pod kierunkiem nauczyciela. Po zapoznaniu się ze wszystkimi elementami kursu oraz wykonaniu testu sprawdzającego wiedzę, uczestnik otrzymuje prawo do samodzielnego wystawienia certyfikatu potwierdzającego zrealizowanie kursu e-learningowego „Algorytmy poszukiwania i porządkowania. Elementy języka programowania” przygotowanego przez Warszawską Wyższą Szkołę Informatyki.

Certyfikat potwierdzający realizację kursu

certyfikat

O wykładowcy
Prof. dr hab. Maciej M. Sysło jest wykładowcą Uniwersytetu Wrocławskiego oraz Uniwersytetu Mikołaja Kopernika w Toruniu. Specjalizuje się w teorii grafów, matematyce dyskretnej, algorytmice, optymalizacji oraz dydaktyce informatyki. W latach 2010-2012 prowadził szkolenia z zakresu algorytmiki i programowania w ramach projektu Informatyka +. Prof. dr hab. Maciej M. Sysło jest koordynatorem merytorycznym w projekcie  „Informatyka – mój sposób na poznanie i opisanie świata – program nauczania informatyki z elementami przedmiotów matematyczno-przyrodniczych”