W tym repozytorium będą się sukcesywnie pojawiać moje notatki (contributions mile widziane) z przygotowań do matury z informatyki.
Ponadto poniżej znajdziesz linki do stron oraz książek pomocnych w nauce.
Miłej zabawy!
Poniższy zakres materiału pochodzi z podstawy programowej do nauki informatyki w szkołach ponadgimnazjalnych na poziomie rozszerzonym.
Wycinek z podstawy, który nas interesuje znajdziesz w pliku Podstawa programowa.pdf. Cały dokument (~120 stron) znajdziesz na stronie Ośrodka Rozwoju Edkacji
Odznaczone rzeczy znajdziesz w notatkach, pozostałe to WIP
- strategia „dziel i rządź”
- podejście zachłanne
- rekurencja
- zamiana liczb z różnych systemów pozycyjnych (dwójkowy, dziesiętny, szesnastkowy)
- czy liczba jest pierwsza, doskonała
- rozkładanie liczby na czynniki pierwsze
- algorytm Euklidesa (iteracyjny, rekurencyjny)
- obliczanie wartości liczb ciągu Fibonacciego (iteracyjny, rekurencyjny)
- „wydawanie reszty metodą zachłanną”
- znajdywanie największego i najmniejszego elementu w zbiorze (zwykły, zoptymalizowany)
- algorytmy sortowania
- bąbelkowe
- przez wybór
- przez wstawianie liniowe
- przez wstawianie binarne
- przez scalanie
- kubełkowe
- szybkie (quick sort)
- obliczanie wartości pierwiastka kwadratowego
- zastosowania schematu Hornera:
- obliczanie wartości wielomianu
- reprezentacja liczb w różnych systemach liczbowych
- szybkie podnoszenie do potęgi
- wyznaczanie miejsc zerowych funkcji metodą połowienia
- obliczenia pola obszarów zamkniętych
- sprawdzanie czy ciąg znaków jest:
- palindrom
- anagram
- porządkowanie alfabetyczne ciągu znaków
- wyszukiwanie wzorca w tekście (regex?)
- obliczanie wartości wyrażenia w odwrotnej notacji polskiej
- kody znaków o zmiennej długości
- alfabet Morse’a
- kod Huffmana
- szyfry
- Cezara
- przestawieniowy
- z kluczem jawnym (RSA)
- wykorzystanie algorytmów szyfrowania (np. podpis elektroniczny)
- sprawdzanie warunku trójkąta
- badanie położenia punktów względem prostej
- badanie przynależności punktu do odcinka
- przecinanie się odcinków
- przynależność punktu do obszaru
- drzewo binarne
- dywan Sierpińskiego
- płatek Kocha
- zasady programowania „strukturalnego i modularnego”
- Opisywanie własności algorytmu
- ocena zgodności ze specyfikacją
- szacowanie złożoności pamięciowej algorytmu
- obliczanie liczby operacji wykonywanych przez algorytm (notacja dużego O)
- źródło błędów w obliczeniach komputerowych (błąd względny, błąd bezwzględny)
- operacje i/o (na plikach)
- operacje na plikach CSV (w pythonie)
- łączenie się z bazą sqlite (Python)
- składania SQL (operacje na MySQL)
- komendy linuxowe (grep, itp…)
- pomoc w razie problemu, bez internetu (man)
- Regex
- http://www.algorytm.edu.pl/
- https://eduinf.waw.pl/inf/index.php
- https://www.practicepython.org/
- https://github.com/jwasham/coding-interview-university
- https://www.geeksforgeeks.org/fundamentals-of-algorithms
- https://www.khanacademy.org/computing/computer-science/algorithms
- https://www.programiz.com/dsa/algorithm
- http://www.algorytm.edu.pl/algorytmy-maturalne.html
- https://www.p-programowanie.pl/dzial/matura-z-informatyki/
- http://wazniak.mimuw.edu.pl/index.php?title=Algorytmy_i_struktury_danych
- https://www.coursera.org/learn/algorithms-part1?ranMID=40328&ranEAID=JVFxdTr9V80&ranSiteID=JVFxdTr9V80-0HIjwdZhSB.t.Cz6b7o_PA&siteID=JVFxdTr9V80-0HIjwdZhSB.t.Cz6b7o_PA&utm_content=10&utm_medium=partners&utm_source=linkshare&utm_campaign=JVFxdTr9V80
- https://teachyourselfcs.com/#programming
Zadania z zakresu algorytmiki z automatycznym ocenianiem
Projekt dostępny jest na licencji Creative Commons Uznanie autorstwa-Na tych samych warunkach 3.0 Unported (CC BY-SA 3.0)