Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Wydział Informatyki - Informatyka (S1)

Sylabus przedmiotu Wstęp do algorytmizacji:

Informacje podstawowe

Kierunek studiów Informatyka
Forma studiów studia stacjonarne Poziom pierwszego stopnia
Tytuł zawodowy absolwenta inżynier
Obszary studiów nauk technicznych, studiów inżynierskich
Profil ogólnoakademicki
Moduł
Przedmiot Wstęp do algorytmizacji
Specjalność przedmiot wspólny
Jednostka prowadząca Katedra Inżynierii Oprogramowania
Nauczyciel odpowiedzialny Jerzy Pejaś <Jerzy.Pejas@zut.edu.pl>
Inni nauczyciele Włodzimierz Chocianowicz <Wlodzimierz.Chocianowicz@zut.edu.pl>
ECTS (planowane) 3,0 ECTS (formy) 3,0
Forma zaliczenia egzamin Język polski
Blok obieralny Grupa obieralna

Formy dydaktyczne

Forma dydaktycznaKODSemestrGodzinyECTSWagaZaliczenie
wykładyW2 15 1,10,59egzamin
ćwiczenia audytoryjneA2 30 1,90,41zaliczenie

Wymagania wstępne

KODWymaganie wstępne
W-1Student powinien posiadać podstawowe umiejętności programowania w języku C/C++, znać podstawowe pojęcia matematyki dyskretnej i informatyki: zbiory i operacje na zbiorach, relacje, funkcje, indukcja i iteracja, budowa i funkcjonowanie komputera (w tym procesora), stosu programowego

Cele przedmiotu

KODCel modułu/przedmiotu
C-1Praktyczne opanowanie zasad tworzenia algorytmów
C-2Nabycie umiejętności oceny i porównywania algorytmów ze względu na czaso- i pamięciochłonność
C-3Zapoznanie studenta z zasadami formułowania zadań algorytmicznych, projektowania algorytmów do ich rozwiązywania i oceny tych algorytmów
C-4Zapoznanie studenta z podstawowymi algorytmami sortowania oraz strukturami danych (stos, kolejka, lista)

Treści programowe z podziałem na formy zajęć

KODTreść programowaGodziny
ćwiczenia audytoryjne
T-A-1Schematy blokowe algorytmów i pseudokody4
T-A-2Naturalna ocena złożoności algorytmów (przypadek optymistyczny, pesymistyczny, oczekiwany)6
T-A-3Konfrontacja iteracyjnych i rekurencyjnych wersji algorytmów4
T-A-4Asymptotyczna ocena złożoności algorytmów i twierdzenie o rekurencji uniwersalnej4
T-A-5Metody rozwiązywania równań rekurencyjnych2
T-A-6Wywodzenie algorytmów zintegrowanych na podstawie algorytmów cząstkowych (na przykładzie algorytmów dotyczących grafów),4
T-A-7Formalne badanie poprawności algorytmów2
T-A-8Formułowanie asercji, niezmienników i zbieżników oraz dowodzenie ich prawdziwości4
30
wykłady
T-W-1Wprowadzenie: specyfikacja i sposoby opisu algorytmów, kryteria porównania algorytmów, pojęcie struktury danych i systemu algebraicznego, przegląd fundamentalnych idei i metod projektowania algorytmów3
T-W-2Rekurencja i algorytmy rekurencyjne2
T-W-3Poprawność algorytmu2
T-W-4Sprawność algorytmów (analiza algorytmów)2
T-W-5Projektowanie algorytmu2
T-W-6Wybrane metody sortowania2
T-W-7Abstrakcyjne podstawowe struktury danych (stos, kolejka, listy)2
15

Obciążenie pracą studenta - formy aktywności

KODForma aktywnościGodziny
ćwiczenia audytoryjne
A-A-1uczestnictwo w zajęciach30
A-A-2przygotowanie do ćwiczeń21
A-A-3Udział w konsultacjachUdział w zaliczeniu formy zajęć i konsultacje4
55
wykłady
A-W-1Udział, dyskusje i rozwiazywanie problemów formułowanych podczas wykładów15
A-W-2Przygotowanie do egzaminu i udział w egzaminie15
A-W-3Udział w konsultacjach do wykładu2
32

Metody nauczania / narzędzia dydaktyczne

KODMetoda nauczania / narzędzie dydaktyczne
M-1Wykład informacyjno-konwersatoryjny
M-2Ćwiczenia przedmiotowe

Sposoby oceny

KODSposób oceny
S-1Ocena formująca: Ocena na podstawie umiejętności rozwiązywania zadań formułowanych podczas ćwiczeń
S-2Ocena formująca: Udział w dyskusjach prowadzonych w trakcie zajęć
S-3Ocena podsumowująca: Egzamin - test (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe)

Zamierzone efekty kształcenia - wiedza

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_1A_C/2_W01
Student rozumie pojęcia złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
I_1A_W05T1A_W03, T1A_W07InzA_W02C-2T-A-2, T-W-4, T-A-4, T-W-3, T-A-7, T-A-8M-2, M-1S-3, S-2, S-1
I_1A_C/2_W02
Student potrafi definiować zadania algorytmiczne oraz zaproponować odpowiednią technikę algorytmiczną do jego rozwiązania
I_1A_W05T1A_W03, T1A_W07InzA_W02C-3, C-1T-W-1, T-A-3, T-A-1, T-W-5, T-A-6M-1, M-2S-1, S-2, S-3
I_1A_C/2_W03
Student zna podstawowe algorytmy sortowania oraz struktury danych (stos, kolejka, lista)
I_1A_W05T1A_W03, T1A_W07InzA_W02C-4, C-1T-W-7, T-W-6, T-W-2, T-A-6M-1, M-2S-1, S-3

Zamierzone efekty kształcenia - umiejętności

Zamierzone efekty kształceniaOdniesienie do efektów kształcenia dla kierunku studiówOdniesienie do efektów zdefiniowanych dla obszaru kształceniaOdniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraCel przedmiotuTreści programoweMetody nauczaniaSposób oceny
I_1A_C/2_U01
Student formułować i rozwiązywać zadania algorytmiczne
I_1A_U19T1A_U13, T1A_U15, T1A_U16InzA_U05, InzA_U07, InzA_U08C-3, C-1T-W-2, T-A-1, T-A-6, T-W-1, T-A-3, T-W-3M-2, M-1S-1, S-3, S-2
I_1A_C/2_U02
Student potrafi badać poprawność algorytmów i ich sprawność, ulepszać ich działanie
I_1A_U19T1A_U13, T1A_U15, T1A_U16InzA_U05, InzA_U07, InzA_U08C-3, C-1T-A-4, T-A-2, T-W-5, T-W-2, T-W-7, T-W-1, T-W-3, T-W-4, T-A-7, T-A-1, T-A-5M-2, M-1S-2, S-3, S-1
I_1A_C/2_U03
Student potrafi zastosować podstawowe struktury danych do rozwiązywania zadań algorytmicznych
I_1A_U19T1A_U13, T1A_U15, T1A_U16InzA_U05, InzA_U07, InzA_U08C-4T-A-6, T-W-7, T-A-1, T-W-6M-1, M-2S-2, S-1, S-3

Kryterium oceny - wiedza

Efekt kształceniaOcenaKryterium oceny
I_1A_C/2_W01
Student rozumie pojęcia złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
2,0nie spełnia kryteriów okreslonych dla oceny 3
3,0potrafi wymienić i zdefiniować wybrane podstawowe pojęcia dotyczące złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
3,5potrafi wymienić i zdefiniować dowolne podstawowe pojęcia dotyczące złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
4,0potrafi precyzyjnie opisać wybrane podstawowe pojęcia dotyczące złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
4,5potrafi precyzyjnie opisać dowolne podstawowe pojęcia dotyczące złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
5,0spełnia wymagania na ocenę 4,5 oraz dodatkowo a poziomie podstawowym zna metody formalnego dowodzenia poprawności algorytmów
I_1A_C/2_W02
Student potrafi definiować zadania algorytmiczne oraz zaproponować odpowiednią technikę algorytmiczną do jego rozwiązania
2,0nie spełnia kryteriów okreslonych dla oceny 3
3,0potrafi wymienić i definiować wybrane podstawowe zadania algorytmiczne oraz proponować odpowiednie techniki algorytmiczne do ich rozwiązania
3,5potrafi wymienić i definiować dowolne podstawowe zadania algorytmiczne oraz proponować odpowiednie techniki algorytmiczne do ich rozwiązania
4,0potrafi precyzyjnie opisać wybrane podstawowe zadania algorytmiczne oraz proponować odpowiednie techniki algorytmiczne do ich rozwiązania
4,5potrafi precyzyjnie opisać dowolne podstawowe zadania algorytmiczne oraz proponować odpowiednie techniki algorytmiczne do ich rozwiązania
5,0spełnia wymagania na ocenę 4,5 oraz dodatkowo na poziomie podstawowym potrafi zaproponować i wytłumaczyć działanie metody programowania dynamicznego na przykładzie wskazanego problemu algorytmicznego
I_1A_C/2_W03
Student zna podstawowe algorytmy sortowania oraz struktury danych (stos, kolejka, lista)
2,0nie spełnia kryteriów określonych dla oceny 3
3,0zna wybrane podstawowe struktury danych (stos, kolejka) oraz potrafi wyjaśnić działanie wybranych podstawowych iteracyjnych algorytmów sortowania
3,5zna dowolne podstawowe struktury danych (stos, jedno - dwukierunkowe kolejki i listy) oraz potrafi wyjaśnić działanie wybranych podstawowych iteracyjnych algorytmów sortowania
4,0potrafi opisać dowolne podstawowe struktury danych (stos, jedno - dwukierunkowe kolejki i listy) oraz wyjaśnić działanie wybranych podstawowych iteracyjnych i rekurencyjnych algorytmów sortowania
4,5potrafi precyzyjnie opisać dowolne podstawowe struktury danych (stos, jedno - dwukierunkowe kolejki i listy) oraz precyzyjnie wyjaśnić działanie wybranych podstawowych iteracyjnych i rekurencyjnych algorytmów sortowania
5,0spełnia wymagania na ocenę 4,5 oraz dodatkowo potrafi opisać Student potrafi wyjaśnid działanie wybranych algorytmów sortowania wykraczajacych poza podstawowy zestaw algorytmów sortowania

Kryterium oceny - umiejętności

Efekt kształceniaOcenaKryterium oceny
I_1A_C/2_U01
Student formułować i rozwiązywać zadania algorytmiczne
2,0nie spełnia kryteriów określonych dla oceny 3
3,0potrafi formułować i rozwiązywać wybrane podstawowe zadania algorytmiczne
3,5potrafi formułować i rozwiązywać dowolne podstawowe zadania algorytmiczne
4,0potrafi zastosować metodę projektowania dziel i zwyciężaj do rozwiązania wybranych podstawowych zadań algorytmicznych
4,5potrafi zastosować metodę projektowania zachłannego oraz dziel i zwyciężaj do rozwiąznaia dowolnych zadań algorytmicznych
5,0potrafi zastosować metodę programownaia dydnamicznego do zaprojektowania wybranych podstawowych zadań algorytmicznych
I_1A_C/2_U02
Student potrafi badać poprawność algorytmów i ich sprawność, ulepszać ich działanie
2,0nie spełnia kryteriów określonych dla oceny 3
3,0potrafi obliczyć złożoność czasową wybranych podstawowych algorytmów
3,5potrafi obliczyć złożoność czasową dowolnych podstawowych algorytmów
4,0spełnia wymagania na ocenę 3,5 oraz dodatkowo potrafi zweryfikować poprawność wybranych podstawowych algorytmów
4,5spełnia wymagania na ocenę 3,5 oraz dodatkowo potrafi zweryfikować poprawność dowolnych podstawowych algorytmów
5,0pospełnia wymagania na ocenę 4,5 oraz dodatkowo potrafi wprowadzić usprawnienia podnoszące sprawność działania algorytmów
I_1A_C/2_U03
Student potrafi zastosować podstawowe struktury danych do rozwiązywania zadań algorytmicznych
2,0nie spełnia kryteriów określonych dla oceny 3
3,0potrafi zastosować tablicowe implementacje wybranych podstawowych liniowych struktur danych do zaimplementowania wybranych podstawowych zadań algorytmicznych
3,5potrafi zastosować tablicowe implementacje dowolnych podstawowych liniowych struktur danych do zaimplementowania wybranych podstawowych zadań algorytmicznych
4,0potrafi zastosować dynamiczne (np. wskażnikowe) implementacje wybranych podstawowych liniowych struktur danych do zaimplementowania wybranych podstawowych zadań algorytmicznych
4,5potrafi zastosować dynamiczne (np. wskażnikowe) implementacje dowolnych podstawowych liniowych struktur danych do zaimplementowania wybranych podstawowych zadań algorytmicznych
5,0potrafi zastosować dynamiczne (np. wskażnikowe) implementacje dowolnych podstawowych liniowych struktur danych do zaimplementowania dwolnych podstawowych zadań algorytmicznych

Literatura podstawowa

  1. T.H. Cormen, Ch.E.Leiserson, R.I.Rivest, Wprowadzenia do algorytmów, WNT, Warszawa, 2004
  2. Kyle Loudon, Algorytmy w C, Helion, Warszawa, 2003

Literatura dodatkowa

  1. Richard Neapolitan, Kumarss Naimipour, Podstawy algorytmów z przykładami w C++, Helion, Warszawa, 2004
  2. Alfred V. Aho, John E. Hopcroft, Jeffrey D. Ullman, Algorytmy i struktury danych, Helion, Warszawa, 2003
  3. Piotr Wróblewski, Algorytmy, struktury danych i techniki programowania, 2009, Wyd. IV

Treści programowe - ćwiczenia audytoryjne

KODTreść programowaGodziny
T-A-1Schematy blokowe algorytmów i pseudokody4
T-A-2Naturalna ocena złożoności algorytmów (przypadek optymistyczny, pesymistyczny, oczekiwany)6
T-A-3Konfrontacja iteracyjnych i rekurencyjnych wersji algorytmów4
T-A-4Asymptotyczna ocena złożoności algorytmów i twierdzenie o rekurencji uniwersalnej4
T-A-5Metody rozwiązywania równań rekurencyjnych2
T-A-6Wywodzenie algorytmów zintegrowanych na podstawie algorytmów cząstkowych (na przykładzie algorytmów dotyczących grafów),4
T-A-7Formalne badanie poprawności algorytmów2
T-A-8Formułowanie asercji, niezmienników i zbieżników oraz dowodzenie ich prawdziwości4
30

Treści programowe - wykłady

KODTreść programowaGodziny
T-W-1Wprowadzenie: specyfikacja i sposoby opisu algorytmów, kryteria porównania algorytmów, pojęcie struktury danych i systemu algebraicznego, przegląd fundamentalnych idei i metod projektowania algorytmów3
T-W-2Rekurencja i algorytmy rekurencyjne2
T-W-3Poprawność algorytmu2
T-W-4Sprawność algorytmów (analiza algorytmów)2
T-W-5Projektowanie algorytmu2
T-W-6Wybrane metody sortowania2
T-W-7Abstrakcyjne podstawowe struktury danych (stos, kolejka, listy)2
15

Formy aktywności - ćwiczenia audytoryjne

KODForma aktywnościGodziny
A-A-1uczestnictwo w zajęciach30
A-A-2przygotowanie do ćwiczeń21
A-A-3Udział w konsultacjachUdział w zaliczeniu formy zajęć i konsultacje4
55
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta

Formy aktywności - wykłady

KODForma aktywnościGodziny
A-W-1Udział, dyskusje i rozwiazywanie problemów formułowanych podczas wykładów15
A-W-2Przygotowanie do egzaminu i udział w egzaminie15
A-W-3Udział w konsultacjach do wykładu2
32
(*) 1 punkt ECTS, odpowiada około 30 godzinom aktywności studenta
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_1A_C/2_W01Student rozumie pojęcia złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W05ma wiedzę w zakresie algorytmizacji i zasad tworzenia struktur danych
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaT1A_W03ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu studiowanego kierunku studiów
T1A_W07zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_W02zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
Cel przedmiotuC-2Nabycie umiejętności oceny i porównywania algorytmów ze względu na czaso- i pamięciochłonność
Treści programoweT-A-2Naturalna ocena złożoności algorytmów (przypadek optymistyczny, pesymistyczny, oczekiwany)
T-W-4Sprawność algorytmów (analiza algorytmów)
T-A-4Asymptotyczna ocena złożoności algorytmów i twierdzenie o rekurencji uniwersalnej
T-W-3Poprawność algorytmu
T-A-7Formalne badanie poprawności algorytmów
T-A-8Formułowanie asercji, niezmienników i zbieżników oraz dowodzenie ich prawdziwości
Metody nauczaniaM-2Ćwiczenia przedmiotowe
M-1Wykład informacyjno-konwersatoryjny
Sposób ocenyS-3Ocena podsumowująca: Egzamin - test (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe)
S-2Ocena formująca: Udział w dyskusjach prowadzonych w trakcie zajęć
S-1Ocena formująca: Ocena na podstawie umiejętności rozwiązywania zadań formułowanych podczas ćwiczeń
Kryteria ocenyOcenaKryterium oceny
2,0nie spełnia kryteriów okreslonych dla oceny 3
3,0potrafi wymienić i zdefiniować wybrane podstawowe pojęcia dotyczące złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
3,5potrafi wymienić i zdefiniować dowolne podstawowe pojęcia dotyczące złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
4,0potrafi precyzyjnie opisać wybrane podstawowe pojęcia dotyczące złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
4,5potrafi precyzyjnie opisać dowolne podstawowe pojęcia dotyczące złożoności, sprawności i poprawności oraz ich praktyczne znaczenie w analizie algorytmów
5,0spełnia wymagania na ocenę 4,5 oraz dodatkowo a poziomie podstawowym zna metody formalnego dowodzenia poprawności algorytmów
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_1A_C/2_W02Student potrafi definiować zadania algorytmiczne oraz zaproponować odpowiednią technikę algorytmiczną do jego rozwiązania
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W05ma wiedzę w zakresie algorytmizacji i zasad tworzenia struktur danych
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaT1A_W03ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu studiowanego kierunku studiów
T1A_W07zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_W02zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
Cel przedmiotuC-3Zapoznanie studenta z zasadami formułowania zadań algorytmicznych, projektowania algorytmów do ich rozwiązywania i oceny tych algorytmów
C-1Praktyczne opanowanie zasad tworzenia algorytmów
Treści programoweT-W-1Wprowadzenie: specyfikacja i sposoby opisu algorytmów, kryteria porównania algorytmów, pojęcie struktury danych i systemu algebraicznego, przegląd fundamentalnych idei i metod projektowania algorytmów
T-A-3Konfrontacja iteracyjnych i rekurencyjnych wersji algorytmów
T-A-1Schematy blokowe algorytmów i pseudokody
T-W-5Projektowanie algorytmu
T-A-6Wywodzenie algorytmów zintegrowanych na podstawie algorytmów cząstkowych (na przykładzie algorytmów dotyczących grafów),
Metody nauczaniaM-1Wykład informacyjno-konwersatoryjny
M-2Ćwiczenia przedmiotowe
Sposób ocenyS-1Ocena formująca: Ocena na podstawie umiejętności rozwiązywania zadań formułowanych podczas ćwiczeń
S-2Ocena formująca: Udział w dyskusjach prowadzonych w trakcie zajęć
S-3Ocena podsumowująca: Egzamin - test (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe)
Kryteria ocenyOcenaKryterium oceny
2,0nie spełnia kryteriów okreslonych dla oceny 3
3,0potrafi wymienić i definiować wybrane podstawowe zadania algorytmiczne oraz proponować odpowiednie techniki algorytmiczne do ich rozwiązania
3,5potrafi wymienić i definiować dowolne podstawowe zadania algorytmiczne oraz proponować odpowiednie techniki algorytmiczne do ich rozwiązania
4,0potrafi precyzyjnie opisać wybrane podstawowe zadania algorytmiczne oraz proponować odpowiednie techniki algorytmiczne do ich rozwiązania
4,5potrafi precyzyjnie opisać dowolne podstawowe zadania algorytmiczne oraz proponować odpowiednie techniki algorytmiczne do ich rozwiązania
5,0spełnia wymagania na ocenę 4,5 oraz dodatkowo na poziomie podstawowym potrafi zaproponować i wytłumaczyć działanie metody programowania dynamicznego na przykładzie wskazanego problemu algorytmicznego
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_1A_C/2_W03Student zna podstawowe algorytmy sortowania oraz struktury danych (stos, kolejka, lista)
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_W05ma wiedzę w zakresie algorytmizacji i zasad tworzenia struktur danych
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaT1A_W03ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną obejmującą kluczowe zagadnienia z zakresu studiowanego kierunku studiów
T1A_W07zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_W02zna podstawowe metody, techniki, narzędzia i materiały stosowane przy rozwiązywaniu prostych zadań inżynierskich z zakresu studiowanego kierunku studiów
Cel przedmiotuC-4Zapoznanie studenta z podstawowymi algorytmami sortowania oraz strukturami danych (stos, kolejka, lista)
C-1Praktyczne opanowanie zasad tworzenia algorytmów
Treści programoweT-W-7Abstrakcyjne podstawowe struktury danych (stos, kolejka, listy)
T-W-6Wybrane metody sortowania
T-W-2Rekurencja i algorytmy rekurencyjne
T-A-6Wywodzenie algorytmów zintegrowanych na podstawie algorytmów cząstkowych (na przykładzie algorytmów dotyczących grafów),
Metody nauczaniaM-1Wykład informacyjno-konwersatoryjny
M-2Ćwiczenia przedmiotowe
Sposób ocenyS-1Ocena formująca: Ocena na podstawie umiejętności rozwiązywania zadań formułowanych podczas ćwiczeń
S-3Ocena podsumowująca: Egzamin - test (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe)
Kryteria ocenyOcenaKryterium oceny
2,0nie spełnia kryteriów określonych dla oceny 3
3,0zna wybrane podstawowe struktury danych (stos, kolejka) oraz potrafi wyjaśnić działanie wybranych podstawowych iteracyjnych algorytmów sortowania
3,5zna dowolne podstawowe struktury danych (stos, jedno - dwukierunkowe kolejki i listy) oraz potrafi wyjaśnić działanie wybranych podstawowych iteracyjnych algorytmów sortowania
4,0potrafi opisać dowolne podstawowe struktury danych (stos, jedno - dwukierunkowe kolejki i listy) oraz wyjaśnić działanie wybranych podstawowych iteracyjnych i rekurencyjnych algorytmów sortowania
4,5potrafi precyzyjnie opisać dowolne podstawowe struktury danych (stos, jedno - dwukierunkowe kolejki i listy) oraz precyzyjnie wyjaśnić działanie wybranych podstawowych iteracyjnych i rekurencyjnych algorytmów sortowania
5,0spełnia wymagania na ocenę 4,5 oraz dodatkowo potrafi opisać Student potrafi wyjaśnid działanie wybranych algorytmów sortowania wykraczajacych poza podstawowy zestaw algorytmów sortowania
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_1A_C/2_U01Student formułować i rozwiązywać zadania algorytmiczne
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U19ma umiejętność wyboru algorytmu i struktur danych do rozwiązania określonego zadania inżynierskiego
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaT1A_U13potrafi dokonać krytycznej analizy sposobu funkcjonowania i ocenić - zwłaszcza w powiązaniu ze studiowanym kierunkiem studiów - istniejące rozwiązania techniczne, w szczególności urządzenia, obiekty, systemy, procesy, usługi
T1A_U15potrafi ocenić przydatność rutynowych metod i narzędzi służących do rozwiązania prostego zadania inżynierskiego o charakterze praktycznym, charakterystycznego dla studiowanego kierunku studiów oraz wybrać i zastosować właściwą metodę i narzędzia
T1A_U16potrafi - zgodnie z zadaną specyfikacją - zaprojektować oraz zrealizować proste urządzenie, obiekt, system lub proces, typowe dla studiowanego kierunku studiów, używając właściwych metod, technik i narzędzi
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_U05potrafi dokonać krytycznej analizy sposobu funkcjonowania i ocenić - zwłaszcza w powiązaniu ze studiowanym kierunkiem studiów - istniejące rozwiązania techniczne, w szczególności urządzenia, obiekty, systemy, procesy, usługi
InzA_U07potrafi ocenić przydatność rutynowych metod i narzędzi służących do rozwiązania prostego zadania inżynierskiego o charakterze praktycznym, charakterystycznego dla studiowanego kierunku studiów oraz wybrać i zastosować właściwą metodę i narzędzia
InzA_U08potrafi - zgodnie z zadaną specyfikacją - zaprojektować proste urządzenie, obiekt, system lub proces, typowe dla studiowanego kierunku studiów, używając właściwych metod, technik i narzędzi
Cel przedmiotuC-3Zapoznanie studenta z zasadami formułowania zadań algorytmicznych, projektowania algorytmów do ich rozwiązywania i oceny tych algorytmów
C-1Praktyczne opanowanie zasad tworzenia algorytmów
Treści programoweT-W-2Rekurencja i algorytmy rekurencyjne
T-A-1Schematy blokowe algorytmów i pseudokody
T-A-6Wywodzenie algorytmów zintegrowanych na podstawie algorytmów cząstkowych (na przykładzie algorytmów dotyczących grafów),
T-W-1Wprowadzenie: specyfikacja i sposoby opisu algorytmów, kryteria porównania algorytmów, pojęcie struktury danych i systemu algebraicznego, przegląd fundamentalnych idei i metod projektowania algorytmów
T-A-3Konfrontacja iteracyjnych i rekurencyjnych wersji algorytmów
T-W-3Poprawność algorytmu
Metody nauczaniaM-2Ćwiczenia przedmiotowe
M-1Wykład informacyjno-konwersatoryjny
Sposób ocenyS-1Ocena formująca: Ocena na podstawie umiejętności rozwiązywania zadań formułowanych podczas ćwiczeń
S-3Ocena podsumowująca: Egzamin - test (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe)
S-2Ocena formująca: Udział w dyskusjach prowadzonych w trakcie zajęć
Kryteria ocenyOcenaKryterium oceny
2,0nie spełnia kryteriów określonych dla oceny 3
3,0potrafi formułować i rozwiązywać wybrane podstawowe zadania algorytmiczne
3,5potrafi formułować i rozwiązywać dowolne podstawowe zadania algorytmiczne
4,0potrafi zastosować metodę projektowania dziel i zwyciężaj do rozwiązania wybranych podstawowych zadań algorytmicznych
4,5potrafi zastosować metodę projektowania zachłannego oraz dziel i zwyciężaj do rozwiąznaia dowolnych zadań algorytmicznych
5,0potrafi zastosować metodę programownaia dydnamicznego do zaprojektowania wybranych podstawowych zadań algorytmicznych
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_1A_C/2_U02Student potrafi badać poprawność algorytmów i ich sprawność, ulepszać ich działanie
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U19ma umiejętność wyboru algorytmu i struktur danych do rozwiązania określonego zadania inżynierskiego
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaT1A_U13potrafi dokonać krytycznej analizy sposobu funkcjonowania i ocenić - zwłaszcza w powiązaniu ze studiowanym kierunkiem studiów - istniejące rozwiązania techniczne, w szczególności urządzenia, obiekty, systemy, procesy, usługi
T1A_U15potrafi ocenić przydatność rutynowych metod i narzędzi służących do rozwiązania prostego zadania inżynierskiego o charakterze praktycznym, charakterystycznego dla studiowanego kierunku studiów oraz wybrać i zastosować właściwą metodę i narzędzia
T1A_U16potrafi - zgodnie z zadaną specyfikacją - zaprojektować oraz zrealizować proste urządzenie, obiekt, system lub proces, typowe dla studiowanego kierunku studiów, używając właściwych metod, technik i narzędzi
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_U05potrafi dokonać krytycznej analizy sposobu funkcjonowania i ocenić - zwłaszcza w powiązaniu ze studiowanym kierunkiem studiów - istniejące rozwiązania techniczne, w szczególności urządzenia, obiekty, systemy, procesy, usługi
InzA_U07potrafi ocenić przydatność rutynowych metod i narzędzi służących do rozwiązania prostego zadania inżynierskiego o charakterze praktycznym, charakterystycznego dla studiowanego kierunku studiów oraz wybrać i zastosować właściwą metodę i narzędzia
InzA_U08potrafi - zgodnie z zadaną specyfikacją - zaprojektować proste urządzenie, obiekt, system lub proces, typowe dla studiowanego kierunku studiów, używając właściwych metod, technik i narzędzi
Cel przedmiotuC-3Zapoznanie studenta z zasadami formułowania zadań algorytmicznych, projektowania algorytmów do ich rozwiązywania i oceny tych algorytmów
C-1Praktyczne opanowanie zasad tworzenia algorytmów
Treści programoweT-A-4Asymptotyczna ocena złożoności algorytmów i twierdzenie o rekurencji uniwersalnej
T-A-2Naturalna ocena złożoności algorytmów (przypadek optymistyczny, pesymistyczny, oczekiwany)
T-W-5Projektowanie algorytmu
T-W-2Rekurencja i algorytmy rekurencyjne
T-W-7Abstrakcyjne podstawowe struktury danych (stos, kolejka, listy)
T-W-1Wprowadzenie: specyfikacja i sposoby opisu algorytmów, kryteria porównania algorytmów, pojęcie struktury danych i systemu algebraicznego, przegląd fundamentalnych idei i metod projektowania algorytmów
T-W-3Poprawność algorytmu
T-W-4Sprawność algorytmów (analiza algorytmów)
T-A-7Formalne badanie poprawności algorytmów
T-A-1Schematy blokowe algorytmów i pseudokody
T-A-5Metody rozwiązywania równań rekurencyjnych
Metody nauczaniaM-2Ćwiczenia przedmiotowe
M-1Wykład informacyjno-konwersatoryjny
Sposób ocenyS-2Ocena formująca: Udział w dyskusjach prowadzonych w trakcie zajęć
S-3Ocena podsumowująca: Egzamin - test (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe)
S-1Ocena formująca: Ocena na podstawie umiejętności rozwiązywania zadań formułowanych podczas ćwiczeń
Kryteria ocenyOcenaKryterium oceny
2,0nie spełnia kryteriów określonych dla oceny 3
3,0potrafi obliczyć złożoność czasową wybranych podstawowych algorytmów
3,5potrafi obliczyć złożoność czasową dowolnych podstawowych algorytmów
4,0spełnia wymagania na ocenę 3,5 oraz dodatkowo potrafi zweryfikować poprawność wybranych podstawowych algorytmów
4,5spełnia wymagania na ocenę 3,5 oraz dodatkowo potrafi zweryfikować poprawność dowolnych podstawowych algorytmów
5,0pospełnia wymagania na ocenę 4,5 oraz dodatkowo potrafi wprowadzić usprawnienia podnoszące sprawność działania algorytmów
PoleKODZnaczenie kodu
Zamierzone efekty kształceniaI_1A_C/2_U03Student potrafi zastosować podstawowe struktury danych do rozwiązywania zadań algorytmicznych
Odniesienie do efektów kształcenia dla kierunku studiówI_1A_U19ma umiejętność wyboru algorytmu i struktur danych do rozwiązania określonego zadania inżynierskiego
Odniesienie do efektów zdefiniowanych dla obszaru kształceniaT1A_U13potrafi dokonać krytycznej analizy sposobu funkcjonowania i ocenić - zwłaszcza w powiązaniu ze studiowanym kierunkiem studiów - istniejące rozwiązania techniczne, w szczególności urządzenia, obiekty, systemy, procesy, usługi
T1A_U15potrafi ocenić przydatność rutynowych metod i narzędzi służących do rozwiązania prostego zadania inżynierskiego o charakterze praktycznym, charakterystycznego dla studiowanego kierunku studiów oraz wybrać i zastosować właściwą metodę i narzędzia
T1A_U16potrafi - zgodnie z zadaną specyfikacją - zaprojektować oraz zrealizować proste urządzenie, obiekt, system lub proces, typowe dla studiowanego kierunku studiów, używając właściwych metod, technik i narzędzi
Odniesienie do efektów kształcenia prowadzących do uzyskania tytułu zawodowego inżynieraInzA_U05potrafi dokonać krytycznej analizy sposobu funkcjonowania i ocenić - zwłaszcza w powiązaniu ze studiowanym kierunkiem studiów - istniejące rozwiązania techniczne, w szczególności urządzenia, obiekty, systemy, procesy, usługi
InzA_U07potrafi ocenić przydatność rutynowych metod i narzędzi służących do rozwiązania prostego zadania inżynierskiego o charakterze praktycznym, charakterystycznego dla studiowanego kierunku studiów oraz wybrać i zastosować właściwą metodę i narzędzia
InzA_U08potrafi - zgodnie z zadaną specyfikacją - zaprojektować proste urządzenie, obiekt, system lub proces, typowe dla studiowanego kierunku studiów, używając właściwych metod, technik i narzędzi
Cel przedmiotuC-4Zapoznanie studenta z podstawowymi algorytmami sortowania oraz strukturami danych (stos, kolejka, lista)
Treści programoweT-A-6Wywodzenie algorytmów zintegrowanych na podstawie algorytmów cząstkowych (na przykładzie algorytmów dotyczących grafów),
T-W-7Abstrakcyjne podstawowe struktury danych (stos, kolejka, listy)
T-A-1Schematy blokowe algorytmów i pseudokody
T-W-6Wybrane metody sortowania
Metody nauczaniaM-1Wykład informacyjno-konwersatoryjny
M-2Ćwiczenia przedmiotowe
Sposób ocenyS-2Ocena formująca: Udział w dyskusjach prowadzonych w trakcie zajęć
S-1Ocena formująca: Ocena na podstawie umiejętności rozwiązywania zadań formułowanych podczas ćwiczeń
S-3Ocena podsumowująca: Egzamin - test (jednokrotnego lub wielokrotnego wyboru) oraz pytania otwarte (zadania problemowe)
Kryteria ocenyOcenaKryterium oceny
2,0nie spełnia kryteriów określonych dla oceny 3
3,0potrafi zastosować tablicowe implementacje wybranych podstawowych liniowych struktur danych do zaimplementowania wybranych podstawowych zadań algorytmicznych
3,5potrafi zastosować tablicowe implementacje dowolnych podstawowych liniowych struktur danych do zaimplementowania wybranych podstawowych zadań algorytmicznych
4,0potrafi zastosować dynamiczne (np. wskażnikowe) implementacje wybranych podstawowych liniowych struktur danych do zaimplementowania wybranych podstawowych zadań algorytmicznych
4,5potrafi zastosować dynamiczne (np. wskażnikowe) implementacje dowolnych podstawowych liniowych struktur danych do zaimplementowania wybranych podstawowych zadań algorytmicznych
5,0potrafi zastosować dynamiczne (np. wskażnikowe) implementacje dowolnych podstawowych liniowych struktur danych do zaimplementowania dwolnych podstawowych zadań algorytmicznych