Politechnika Warszawska - Centralny System UwierzytelnianiaNie jesteś zalogowany | zaloguj się
katalog przedmiotów - pomoc

Algorithms & Data Structures

Informacje ogólne

Kod przedmiotu: 103B-CTxxx-ISA-EADS Kod Erasmus / ISCED: (brak danych) / (brak danych)
Nazwa przedmiotu: Algorithms & Data Structures
Jednostka: Wydział Elektroniki i Technik Informacyjnych
Grupy: ( Algorithms and Programming )-Computer Science, Telecommunications-B.Sc.-EITI
( Courses in English )--eng.-EITI
( Metody programowania )-Informatyka-inż.-EITI
( Przedmioty podstawowe )-Inżynieria systemów informatycznych-mgr.-EITI
( Przedmioty techniczne )---EITI
( Technical Courses )--eng.-EITI
Punkty ECTS i inne: 6.00
Język prowadzenia: angielski
Jednostka decyzyjna:

103000 - Wydział Elektroniki i Technik Informacyjnych

Kod wydziałowy:

EADS

Numer wersji:

2

Skrócony opis:

Wykład przedstawia podstawowy materiał pozwalający na zrozumienie struktur danych. Paradygmat projektowania (i programowania) obiektowego jest wykorzystywany do prezentacji abstrakcyjnych typów danych. Główny akcent jest położony na algorytmy wykorzystywane w operacjach na strukturach danych.

Pełny opis: (tylko po angielsku)

The lecture presents fundamental material to the understanding of data structures. The object-oriented paradigm is used to demonstrate abstract data types. The main focus is put on algorithms handling operations of data structures.


Lecture contents
Data Structures Overview (4h): data types, data type system, object, data structure, linear data structure, tree, graph, evaluating efficiency and the O-notation. Data Types: built-in types, collections, indexed collections.
Linear Data Types (4h): singly-linked list, doubly-linked list, ring, stack, queue, priority queue.
Sorting Algorithms(6h): simple sorting (Insertion Sort, Selection Sort, Bubble Sort), advanced sorting (Quicksort, Merge Sort, Heap Sort, Shell Sort), Straight Radix Sort, Radix Exchenge Sort, Shell Sort.
Searching Algorithms (2h): linear searching, binary searching, interpolation searching, Fibonacci searching, hashing strategy, hashing functions and hash search methods.
Trees (6h): Binary Search Tree, Binary Tree Sort, trees with arbitrary degree, AVL Trees, balancing, rotations, digital trees, B-trees, BB-trees.
Recursion (2h): Divide-and-Conquere strategy, Hanoi Towers.
Graphs (6h): directed and undirected graphs, paths, loops, reachibility, implementation methods, adjacency matrix, linked adjacency lists,graph traversals, Depth-First traversals and Breadth-First traversals, weighted and unweighted graphs, positive-weighted shortest path problem (Dijkstra`s algorithm).




Tutorial contents
During exercises some typical problems of data structures are formulated , discussed and solved.


Laboratory contents
The laboratory consists of 3 simple tasks involving data structures. Classes employing single-linked lists, doubly-linked rings and binary search trees have to be designed, implemented and tested.


Similar Courses

CodeNameDiscount ECTS
103C-INxxx-ISP-AISDIAlgorytmy i struktury danych4
103C-INxxx-ISP-AISDIAlgorytmy i struktury danych4
103B-INxxx-ISP-AISDIAlgorytmy i struktury danych4
103B-INxxx-ISP-AISDIAlgorytmy i struktury danych4

Literatura: (tylko po angielsku)

    1. M. A. Weiss: Data Structures and Problem Solving Using C++, Second Edition, Addison Wesley Longman Inc., 2000.

    2. T. Budd: Data Structures in C++ Using the Standard Template Library, Addison Wesley Longman Inc., 1997.

    3. S. Sengupta, C.Ph. Korobkin: C++, Object-Oriented Data Structures, Springer-Verlag, 1994.

Efekty kształcenia:

Objective:

  • The students should learn to properly operate on different data structures in programming languages.
  • They should become familiar with designing and implementing abstract data types in object oriented environment (the C++ language).
  • They should realize consequences of implementing the same complex data types by different data structures.
Metody i kryteria oceniania:

EADS is an examination course. It is possible to obtain:

  • up to 30 points (3*10) for laboratory
  • up to 20 points for mid-term test
  • up to 50 points for examination

To be eligible for the exam it is necessary to score at least 16 points during the laboratories.

The final result is determined on the following rules:

  • 5,0: 91-100 points
  • 4,5: 81-90 points
  • 4,0: 71-80 points
  • 3,5: 61-70 points
  • 3,0: 51-60 points
  • 2,0: 0-50 points (not passing grade)

Students who pass the mid-term test for at least 14 points and score at least 36 points during the semester and regularly attend classes can obtain the following marks without taking the exam:

  • 4,0: 36-40 points
  • 4,5: 41-45 points
  • 5,0: 46-50 points

Zajęcia w cyklu "rok akademicki 2019/2020 - sem. zimowy" (w trakcie)

Okres: 2019-10-01 - 2020-02-21
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Ćwiczenia, 15 godzin, 80 miejsc więcej informacji
Laboratorium, 15 godzin, 80 miejsc więcej informacji
Wykład, 30 godzin, 80 miejsc więcej informacji
Koordynatorzy: Roman Podraza, Dariusz Turlej
Prowadzący grup: Rajmund Kożuszek, Roman Podraza, Dariusz Turlej
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Jednostka realizująca:

103200 - Instytut Informatyki

Zajęcia w cyklu "rok akademicki 2018/2019 - sem. letni" (zakończony)

Okres: 2019-02-18 - 2019-09-30
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Ćwiczenia, 15 godzin, 24 miejsc więcej informacji
Laboratorium, 15 godzin, 24 miejsc więcej informacji
Wykład, 30 godzin, 24 miejsc więcej informacji
Koordynatorzy: Roman Podraza
Prowadzący grup: Roman Podraza, Bartłomiej Twardowski
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Jednostka realizująca:

103200 - Instytut Informatyki

Zajęcia w cyklu "rok akademicki 2018/2019 - sem. zimowy" (zakończony)

Okres: 2018-10-01 - 2019-02-17
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Ćwiczenia, 15 godzin, 60 miejsc więcej informacji
Laboratorium, 15 godzin, 60 miejsc więcej informacji
Wykład, 30 godzin, 60 miejsc więcej informacji
Koordynatorzy: Roman Podraza, Dariusz Turlej
Prowadzący grup: Łukasz Dąbała, Roman Podraza, Dariusz Turlej, Bartłomiej Twardowski
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Jednostka realizująca:

103200 - Instytut Informatyki

Zajęcia w cyklu "rok akademicki 2017/2018 - sem. letni" (zakończony)

Okres: 2018-02-19 - 2018-09-30
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Ćwiczenia, 15 godzin, 24 miejsc więcej informacji
Laboratorium, 15 godzin, 24 miejsc więcej informacji
Wykład, 30 godzin, 24 miejsc więcej informacji
Koordynatorzy: Roman Podraza
Prowadzący grup: Roman Podraza, Bartłomiej Twardowski
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Jednostka realizująca:

103200 - Instytut Informatyki

Zajęcia w cyklu "rok akademicki 2017/2018 - sem. zimowy" (zakończony)

Okres: 2017-10-01 - 2018-02-18
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Ćwiczenia, 15 godzin, 60 miejsc więcej informacji
Laboratorium, 15 godzin, 60 miejsc więcej informacji
Wykład, 30 godzin, 60 miejsc więcej informacji
Koordynatorzy: Roman Podraza
Prowadzący grup: Roman Podraza
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Jednostka realizująca:

103200 - Instytut Informatyki

Zajęcia w cyklu "rok akademicki 2016/2017 - sem. letni" (zakończony)

Okres: 2017-02-20 - 2017-09-30
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Ćwiczenia, 15 godzin, 24 miejsc więcej informacji
Laboratorium, 15 godzin, 24 miejsc więcej informacji
Wykład, 30 godzin, 24 miejsc więcej informacji
Koordynatorzy: Roman Podraza
Prowadzący grup: Roman Podraza
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Jednostka realizująca:

103200 - Instytut Informatyki

Zajęcia w cyklu "rok akademicki 2016/2017 - sem. zimowy" (zakończony)

Okres: 2016-10-01 - 2017-02-19
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Ćwiczenia, 15 godzin, 24 miejsc więcej informacji
Laboratorium, 15 godzin, 24 miejsc więcej informacji
Wykład, 30 godzin, 24 miejsc więcej informacji
Koordynatorzy: Roman Podraza
Prowadzący grup: Roman Podraza
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Jednostka realizująca:

103200 - Instytut Informatyki

Zajęcia w cyklu "rok akademicki 2015/2016 - sem. letni" (zakończony)

Okres: 2016-02-23 - 2016-09-30
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć: Ćwiczenia, 15 godzin, 35 miejsc więcej informacji
Laboratorium, 15 godzin, 35 miejsc więcej informacji
Wykład, 30 godzin, 35 miejsc więcej informacji
Koordynatorzy: Roman Podraza
Prowadzący grup: Roman Podraza
Lista studentów: (nie masz dostępu)
Zaliczenie: Egzamin
Jednostka realizująca:

103200 - Instytut Informatyki

Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Politechnika Warszawska.