SubjectsSubjects(version: 945)
Course, academic year 2014/2015
   Login via CAS
Programming II - NPRG031
Title: Programování II
Guaranteed by: Department of Software and Computer Science Education (32-KSVI)
Faculty: Faculty of Mathematics and Physics
Actual: from 2013 to 2015
Semester: summer
E-Credits: 5
Hours per week, examination: summer s.:2/2, C+Ex [HT]
Capacity: unlimited
Min. number of students: unlimited
4EU+: no
Virtual mobility / capacity: no
State of the course: taught
Language: Czech
Teaching methods: full-time
Teaching methods: full-time
Guarantor: RNDr. Tomáš Holan, Ph.D.
doc. RNDr. Pavel Töpfer, CSc.
RNDr. Martin Pergel, Ph.D.
Class: Informatika Bc.
Classification: Informatics > Programming
Incompatibility : NMIN201, NPRM049
Is co-requisite for: NPRG013, NPRG045, NPRG035, NPRG048
Is incompatible with: NPRM048, NPRM047, NPRM001, NPRG047, NMUG103, NPRM049, NPRM045, NMIN201, NMUG104, NMIN161, NMIN162
Is pre-requisite for: NSWI143, NSWI105
Is interchangeable with: NPRM049, NPRM001, NPRM045
In complex pre-requisite: NPRG041
Annotation -
Last update: doc. RNDr. Pavel Töpfer, CSc. (21.02.2018)
The continuation of basic course of programming for students in the 1st year of study in study programs "Computer Science".
Literature - Czech
Last update: doc. RNDr. Pavel Töpfer, CSc. (02.02.2018)

P. Töpfer: Algoritmy a programovací techniky, Prometheus 1995

M. Virius: C# pro zelenáče, Neocortex Praha, 2002

E. Gunnerson: Začínáme programovat v C#, Computer Press Praha 2001

J. Kent: Visual C# 2005 bez předchozích znalostí, Computer Press Brno 2007

Syllabus -
Last update: RNDr. Tomáš Holan, Ph.D. (17.02.2020)

1. Algorithms and programming

  • complexity of algorithms, increasing the efficiency (data pre-processing, "smart" recursion, pruning and heuristics in backtracking)
  • methods of designing efective algorithms - Divide&Impera, dynamic programming
  • external sorting (direct, natural)
  • trees, graphs, trees and graphs traversal
  • binary search trees, operations on them
  • evaluating arithmetic expression in different notations
  • implementation of selected graph algorithms (connectivity, Dijkstra's algorithm, minimum spanning tree, bipartity, topological ordering)
  • hashing (with fixed hashing function)
  • objects, object oriented programming
  • discrete simulation
  • event driven programming - basic ideas

2. C# language

basic concepts of C# language

principles of work in development environment

Knowledge on the level of PRG030 Programming I is expected.

 
Charles University | Information system of Charles University | http://www.cuni.cz/UKEN-329.html