Uniwersytet Warszawski - Centralny System Uwierzytelniania
Strona główna

Metody programowania (podejście imperatywne)

Informacje ogólne

Kod przedmiotu: 1000-212aMPRI
Kod Erasmus / ISCED: 11.301 Kod klasyfikacyjny przedmiotu składa się z trzech do pięciu cyfr, przy czym trzy pierwsze oznaczają klasyfikację dziedziny wg. Listy kodów dziedzin obowiązującej w programie Socrates/Erasmus, czwarta (dotąd na ogół 0) – ewentualne uszczegółowienie informacji o dyscyplinie, piąta – stopień zaawansowania przedmiotu ustalony na podstawie roku studiów, dla którego przedmiot jest przeznaczony. / (0612) Database and network design and administration Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO.
Nazwa przedmiotu: Metody programowania (podejście imperatywne)
Jednostka: Wydział Matematyki, Informatyki i Mechaniki
Grupy:
Punkty ECTS i inne: (brak) Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.

zobacz reguły punktacji
Język prowadzenia: polski
Rodzaj przedmiotu:

obowiązkowe

Założenia (lista przedmiotów):

Wstęp do programowania (podejście imperatywne) 1000-211aWPI

Skrócony opis:

Kontynuacja Wstępu do programowania. Celem zajęć jest prezentacja nieco bardziej zaawansowanych technik programistycznych i podstawowych struktur danych. W równolegle prowadzonym laboratorium studenci ćwiczą pisanie pierwszych programów.

Wymagania wstępne: Wstęp do programowania.

Pełny opis:

1.Rekurencja, jej zastosowania i implementacja. Widoczność zmiennych - zmienne lokalne i globalne. Dowodzenie poprawności procedur rekurencyjnych.

2.Metoda dziel i rządź. Metoda inkrementacyjna oraz podział binarny.

3.Typy wskaźnikowe. Zastosowanie zmiennych wskaźnikowych do realizacji list. Podstawowe operacje na listach. Listy jednokierunkowe, dwukierunkowe i cykliczne.

4.Liniowe struktury danych: stosy i kolejki. Implementacja tablicowa i listowa. Implementacja grafu za pomocą list sąsiedztwa. Algorytmy DFS I BFS.

5.Drzewa. Implementacja drzew dowolnego rzędu. Drzewa binarne. Obiegi drzew. Konwersja wyrażeń z postaci infiksowej na prefiksową i postfiksową (ONP)

6.Programowanie zachłanne. Algorytm Huffmana.

7.Programowanie dynamiczne. Probelm plecakowy. Optymalne mnożenie wielu macierzy.

Uwagi: Następny przedmiot w serii: Algorytmy i struktury danych

Literatura:

1.Algorytmy+Struktury danych=Programy, N.Wirth, WNT 2001.

2.Wprowadzenie do algorytmiki, T.H.Cormen, Ch.E.Leiserson, R.L.Rivest, WNT 2000.

3.Algorytmy w C++, R.Sedgewick, MIKON 2001

4.D. Knuth, Sztuka programowania komputerów, tom 3, WNT 2002

Przedmiot nie jest oferowany w żadnym z aktualnych cykli dydaktycznych.
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Warszawski.
ul. Banacha 2
02-097 Warszawa
tel: +48 22 55 44 214 https://www.mimuw.edu.pl/
kontakt deklaracja dostępności mapa serwisu USOSweb 7.1.2.0-bc9fa12b9 (2025-06-25)