Podcast
Questions and Answers
Jakie operatory arytmetyczne są wymienione w treści?
Jakie operatory arytmetyczne są wymienione w treści?
Który z wymienionych typów danych nie istnieje w treści?
Który z wymienionych typów danych nie istnieje w treści?
Jak prawidłowo deklaruje się zmienną dla liczby całkowitej?
Jak prawidłowo deklaruje się zmienną dla liczby całkowitej?
Jakie są poprawne sposoby dostępu do elementów tablicy w treści?
Jakie są poprawne sposoby dostępu do elementów tablicy w treści?
Signup and view all the answers
Co oznacza operator ':=' w kontekście instrukcji przypisania?
Co oznacza operator ':=' w kontekście instrukcji przypisania?
Signup and view all the answers
Który z poniższych operatorów jest operatorem logicznym?
Który z poniższych operatorów jest operatorem logicznym?
Signup and view all the answers
Jakie jest znaczenie zmiennej 'p' zadeklarowanej jako 'bool'?
Jakie jest znaczenie zmiennej 'p' zadeklarowanej jako 'bool'?
Signup and view all the answers
Jak można zapisać pusty blok instrukcji?
Jak można zapisać pusty blok instrukcji?
Signup and view all the answers
Które z podanych cech nie są wymagane dla poprawnego działania algorytmu?
Które z podanych cech nie są wymagane dla poprawnego działania algorytmu?
Signup and view all the answers
W kontekście algorytmów, co oznacza termin "rozstrzygalny"?
W kontekście algorytmów, co oznacza termin "rozstrzygalny"?
Signup and view all the answers
Które z poniższych nie jest prawidłowym sposobem zapisu algorytmu?
Które z poniższych nie jest prawidłowym sposobem zapisu algorytmu?
Signup and view all the answers
Jaki jest główny argument za patentowaniem algorytmów?
Jaki jest główny argument za patentowaniem algorytmów?
Signup and view all the answers
Jaka jest główna różnica między algorytmem, który jest rozstrzygalny, a algorytmem, który nie jest rozstrzygalny?
Jaka jest główna różnica między algorytmem, który jest rozstrzygalny, a algorytmem, który nie jest rozstrzygalny?
Signup and view all the answers
Co nie jest celem przedmiotu "Algorytmy i Struktury Danych" w pierwszym semestrze?
Co nie jest celem przedmiotu "Algorytmy i Struktury Danych" w pierwszym semestrze?
Signup and view all the answers
Które z poniższych nie jest zaletą algorytmów?
Które z poniższych nie jest zaletą algorytmów?
Signup and view all the answers
Które z podanych nie jest ważnym aspektem przy ocenie algorytmu?
Które z podanych nie jest ważnym aspektem przy ocenie algorytmu?
Signup and view all the answers
Jaki jest adres witryny internetowej wykładu?
Jaki jest adres witryny internetowej wykładu?
Signup and view all the answers
Który z wymienionych autorów nie jest współautorem książki "Algorytmy i struktury danych - zadania"?
Który z wymienionych autorów nie jest współautorem książki "Algorytmy i struktury danych - zadania"?
Signup and view all the answers
Z jakiego powodu niektórzy twierdzą, że patentowanie algorytmów spowalnia rozwój informatyki?
Z jakiego powodu niektórzy twierdzą, że patentowanie algorytmów spowalnia rozwój informatyki?
Signup and view all the answers
Które z poniższych operacji nie jest uważane za operację elementarną w kontekście algorytmów?
Które z poniższych operacji nie jest uważane za operację elementarną w kontekście algorytmów?
Signup and view all the answers
Która z wymienionych książek nie jest wymieniona jako literatura do przedmiotu "Algorytmy i struktury danych"?
Która z wymienionych książek nie jest wymieniona jako literatura do przedmiotu "Algorytmy i struktury danych"?
Signup and view all the answers
Który z podanych autorów jest współautorem książki "Algorytmy i struktury danych" z 2003 roku, wydanej przez Helion?
Który z podanych autorów jest współautorem książki "Algorytmy i struktury danych" z 2003 roku, wydanej przez Helion?
Signup and view all the answers
Co rozumie się przez operację elementarną w kontekście algorytmów?
Co rozumie się przez operację elementarną w kontekście algorytmów?
Signup and view all the answers
Jaka jest główna różnica między algorytmem a algorytmiką?
Jaka jest główna różnica między algorytmem a algorytmiką?
Signup and view all the answers
Flashcards
Algorytm
Algorytm
Opis metody rozwiązania problemu w skończonej liczbie kroków.
Algorytmika
Algorytmika
Dział informatyki zajmujący się projektowaniem i analizą algorytmów.
Operacja elementarna
Operacja elementarna
Niepodzielna czynność wykonywana w skończonym czasie.
Patenty na algorytmy
Patenty na algorytmy
Signup and view all the flashcards
Przykład algorytmu
Przykład algorytmu
Signup and view all the flashcards
Muhammed ibn Musa Alchwarizmi
Muhammed ibn Musa Alchwarizmi
Signup and view all the flashcards
Literatura o algorytmach
Literatura o algorytmach
Signup and view all the flashcards
Analiza algorytmów
Analiza algorytmów
Signup and view all the flashcards
Operatory arytmetyczne
Operatory arytmetyczne
Signup and view all the flashcards
Operatory logiczne
Operatory logiczne
Signup and view all the flashcards
Typy podstawowe
Typy podstawowe
Signup and view all the flashcards
Deklaracja zmiennych
Deklaracja zmiennych
Signup and view all the flashcards
Zmienna tablicowa
Zmienna tablicowa
Signup and view all the flashcards
Blok instrukcji
Blok instrukcji
Signup and view all the flashcards
Instrukcja przypisania
Instrukcja przypisania
Signup and view all the flashcards
Dostęp do elementów typu string
Dostęp do elementów typu string
Signup and view all the flashcards
Prawo własności intelektualnej
Prawo własności intelektualnej
Signup and view all the flashcards
Cechy algorytmu - Poprawność
Cechy algorytmu - Poprawność
Signup and view all the flashcards
Cechy algorytmu - Jednoznaczność
Cechy algorytmu - Jednoznaczność
Signup and view all the flashcards
Cechy algorytmu - Skończoność
Cechy algorytmu - Skończoność
Signup and view all the flashcards
Cechy algorytmu - Sprawność
Cechy algorytmu - Sprawność
Signup and view all the flashcards
Cechy algorytmu - Prostota wykonania
Cechy algorytmu - Prostota wykonania
Signup and view all the flashcards
Problem nierozstrzygalny
Problem nierozstrzygalny
Signup and view all the flashcards
Opis słowny algorytmu
Opis słowny algorytmu
Signup and view all the flashcards
Study Notes
Wprowadzenie do przedmiotu Algorytmy i struktury danych
- Przedmiot: Algorytmy i struktury danych
- Autor: Jan G. Bazan
- Witryna internetowa wykładu: http://fenix.univ.rzeszow.pl/bazan/archiwum/
- Dostęp wymaga autoryzacji:
- Konto: asd
- Hasło: algosys
- Witryna zawierać będzie prezentacje wykładowe, materiały pomocnicze do ćwiczeń, przykłady programów, pytania do egzaminu itp.
Literatura
- Elementy analizy algorytmów (1989), WNT, Banachowski, L., Kreczmar, A.
- Algorytmy i struktury danych - zadania (2006), PJWSTK, Dańko, A, Truong Lan Le, Mirkowska, G., Rembelski, P., Smyk, A., Sydow, M.
- Zbiór zadań z propedeutyki informatyki (1996), PWN, Cichy M., Nomańczuk J., Szpakowicz S.
- Algorytmy i struktury danych (2003), Helion, Aho, A., V., Hopcroft, J., E., Ullman, J., D.
- Algorytmy i struktury danych (1996), WNT, Banachowski, L., Diks, K., Rytter, W.
- Wprowadzenie do algorytmów (2012), WNT, Cormen, T., H., Leiserson, C. E, Rivest, R., L., Stein, C.
Algorytm i algorytmika
- Algorytm to opis metody rozwiązania problemu w skończonej liczbie kroków (operacje elementarne).
- Operacja elementarna to operacja, która z punktu widzenia użytkownika jest całością i realizowana w skończonym czasie.
- Przykłady operacji elementarnych: przypisanie wartości do zmiennej, porównanie dwóch wartości, wczytanie danych z wejścia, wypisanie danych na wyjściu.
- Algorytmika to dział informatyki zajmujący się własnościami algorytmów, ich projektowaniem i analizą.
- Określenie algorytm wywodzi się od nazwiska matematyka perskiego Muhammeda ibn Mūsā al-Chwarizmi (około 800 r. n.e.)
Przykład algorytmu
- Wypranie ubrań w pralce automatycznej:
- Włączenie pralki, załadowanie ubrań, nasypanie proszku
- Ustalenie odpowiedniego programu (w zależności od stopnia zabrudzenia)
- Odkręcenie zaworu doprowadzającego wodę
- Naciśnięcie przycisku START
- Czekanie na sygnał zakończenia pracy (kontrolka KONIEC)
- Zakręcenie zaworu doprowadzającego wodę
- Wyjęcie ubrań, wyłączenie pralki
Patenty na algorytmy
- W niektórych krajach (np. USA) algorytmy mogą być opatentowane, jeśli są zaimplementowane w konkretnym, praktycznym celu.
- Prowadzi to do sporów prawnych pomiędzy koncernami komputerowymi.
- Argumentacja za patentowaniem algorytmów opiera się na prawie własności intelektualnej, traktując oprogramowanie jako wytwór intelektu i pracy jego twórców.
Oczekiwane cechy algorytmów
- Poprawność (algorytm daje dobre wyniki, odzwierciedlające rzeczywistość)
- Jednoznaczność (identyczne dane dają taki sam wynik)
- Skończoność (algorytm kończy się po skończonej ilości kroków)
- Sprawność (czasowa - szybkość wykonania, pamięciowa - zużycie zasobów)
- Prostota (operacje powinny być jak najprostsze)
Cel przedmiotu w pierwszym semestrze
- Nauka projektowania prostych algorytmów
- Nauka analizy algorytmów pod kątem złożoności (efektywności) i poprawności
- Analiza algorytmów bez rekurencji i rekurencyjnych
Algorytm i zagadnienia towarzyszące
- Znajomość problemu
- Podejście do definicji algorytmu
- Rozwijanie algorytmów
- Poprawność
- Złożoność
- Optymalność
Problemy nierozstrzygalne
- Problem decyzyjny jest rozstrzygalny, jeśli istnieje algorytm, który dla dowolnych danych po skończonej liczbie kroków daje rozwiązanie problemu.
- W przeciwnym razie problem jest nierozstrzygalny.
- Przykładem problemu nierozstrzygalnego jest problem domina.
Sposoby zapisu algorytmów
- Opis słowny (opis kolejnych czynności)
- Schemat blokowy (symbole graficzne)
- Pseudokod (umowny język programowania)
- Język programowania (języki programowania)
Aspekty różnych metodologii tworzenia algorytmów
- Proceduralność (podzielenie na procedury)
- Praca sekwencyjna (kolejne wykonywanie czynności)
- Praca wielowątkowa (konkurencyjne wykonywanie czynności)
- Praca równoległa i współbieżna (współpraca procesów)
- Rekurencja (procedura wywołująca sama siebie)
- Obiektowość (połączenie danych i czynności w obiekty)
- Algorytm probabilistyczny (algorytm z wysokim prawdopodobieństwem daje poprawny wynik)
Podstawy pseudokodu
- Książka Algorytmy i struktury danych – zadania, Dańko, A, Truong Lan Le, Mirkowska, G., Rembelski, P., Smyk, A., Sydow, M. (2006), PJWSTK
Elementy składni pseudokodu
- Omówienie składni pseudokodu (elementy instrukcji).
Operatory i relacje
- Operatory arytmetyczne (+, -, *, / ,div, mod)
- Operatory logiczne (NOT, AND, OR, XOR, ⇒, ⇔)
- Relacje (=, <, >, <=, >=)
Typy podstawowe
- int (liczby całkowite)
- real (liczby rzeczywiste)
- char (znaki)
- bool (wartości logiczne)
- string (łańcuchy znaków)
Deklaracja zmiennych
- Deklarowanie zmiennych (z typami)
- Przykłady
- Dostęp do elementów tablicy
Deklaracja zmiennych tablicowych
- Deklaracja zmiennych tablicowych dla różnego typu danych
- Dostęp za pomocą operatorów tablicowych [] dla elementów tablicy.
- Wartość tablic przy inicjalizacji.
Blok instrukcji
- Bloki instrukcji – pogrupowane grupy instrukcji.
- Separacja instrukcji w blokach instrukcji.
- Wprowadzenie przykładów bloków instrukcji.
Instrukcja przypisania
- Instrukcja przypisania – przypisanie wartości wyrażenia do zmiennej.
- Przykłady instrukcji przypisania
Instrukcja warunkowa
- Instrukcja if-then-else – rozgałęzienie algorytmu w zależności od warunku.
- Zasady tworzenia i stosowania instrukcji warunkowych.
- Własne przykłady instrukcji warunkowych
Przykłady instrukcji warunkowych
- Rozmiarowy przykład if-then-else z różnymi warunkami.
- Przykład w programowaniu
Instrukcja pętli while
- Instrukcja pętli while – iterowanie przez blok instrukcji tak długo, jak warunek jest spełniony.
- Wprowadzenie przykładów
Instrukcja pętli for
- Instrukcja pętli for – iterowanie przez blok instrukcji określony zakres iteracji.
- Formy pętli for – do, downto.
- Przykłady instrukcji pętli for
Definicja funkcji
- Definiowanie funkcji, procedur w pseudokodzie.
- Parametry formalne i aktualne w funkcjach.
- Deklaracja zmiennych.
Przykład funkcji
- Definicja funkcji obliczającej silnię.
- Wywołanie funkcji
Definicja procedury
- Definicja procedury.
- Parametry procedury.
- Deklaracja zmiennych proceduralnych
Przykład procedury
- Definicja procedury obliczającej sumę elementów tablicy.
- Wywołanie procedury.
Trzy predefiniowane funkcje i procedury
- Funkcja i procedura Print (wypisuje dane)
- Funkcja Read (Odczytuje dane)
- Funkcja Length (zwraca długość stringa lub tablicy)
Podstawowe funkcje matematyczne
- Funkcje matematyczne (sqr, sqrt, pow, log, abs, min, max, floor, ceil)
Ręczne śledzenie działania programu metoda tabelkowa
- Jak śledzić ręcznie wartości zmiennych podczas działania programu.
- Tabela do śledzenia wykonania programu.
- Celem śledzenia jest odnalezienie potencjalnych błędów w programie.
- Przykład algorytmu i jego śledzenia.
Notacje asymptotyczne
- Wprowadzenie i definicje notacji asymptotycznych.
Mniejszy, równy i większy rząd funkcji
- porównanie funkcji z punktu widzenia asymptotycznego
- notacje f = Ω(g), f = 0(g), f = Ɵ(g).
Wniosek o rzędach funkcji
- Wnioski na temat rzędów funkcji w oparciu o ich definicje.
Porównanie różnych funkcji z punktu widzenia ich rzędów
- Porównanie funkcji i ich rzędów.
- Poszczególne funkcje jako przykłady.
Ograniczenie funkcji z dołu
- Określenie i uzasadnienie warunków ograniczenia funkcji z dołu.
- Definicje oraz przykłady.
Ograniczenie funkcji z góry
- Określenie i uzasadnienie warunków ograniczenia funkcji z góry.
Ograniczenie funkcji z dołu i z góry
- Zestawienie zasad ograniczeń z dołu i z góry dla funkcji.
- Przykładowa tabelka porównawcza.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Ten quiz dotyczy wprowadzenia do przedmiotu 'Algorytmy i struktury danych', omówionych przez Jana G. Bazana. Znajdziesz w nim pytania dotyczące ważnych koncepcji oraz literatury związanej z tematem. Przygotuj się na egzaminy i sprawdź swoją wiedzę na temat algorytmów.