Charles Explorer logo
🇬🇧

Introduction to Computer Science

Class at Faculty of Arts |
ALG110006

This text is not available in the current language. Showing version "cs".Syllabus

  0) Úvod, historie 1) Jednoduché programy a) Práce s čísly b) Práce s řetězci c) Použití objektů 2) Složitější techniky a) funkce (procedury) b) if/elif/else; výjimky c) použití cyklů 3) Návrh programu a) návrh programu (top-down desigh) b) simulace c) základy návrhu tříd (objektů) d) složitější datové typy (pole, asociativní pole) 5) Základy objektově orientovaného programování a) data encapsulation b) polymorphism c) inheritance 6) Algoritmy & Složitost a) Linear a Binary search b) Rekurze c) Třídící algoritmy d) Backtracking d) Halting problém & diagonalizace

Literatura:

Zeele, J.: Python programming (An introduction to computer science), Franklin, Beedle & Associates; Oregon 2004

Downey, A.: Think Python (How to think like a computer scientist), Green Tea Press; Needham, MA 2008 [www.thinkpython.com]

Wirth, N.: Algorithms + Data Structures = Programs, Prentice Hall Englewood Cliffs; New Jersey 1975

Töpfer, P.: Algoritmy a programovací techniky, Prometheus; Praha 1995   0) Úvod, historie 1) Jednoduché programy  

Práce s čísly

Práce s řetězci

Použití objektů   2) Složitější techniky   funkce (procedury) if/elif/else; výjimky použití cyklů   3) Návrh programu   návrh programu (top-down design) simulace základy návrhu tříd (objektů) složitější datové typy (pole, asociativní pole)   5) Základy objektově orientovaného programování   data encapsulation polymorphism inheritance 6) Algoritmy & Složitost

Linear a Binary search

Rekurze

Třídící algoritmy

Backtracking

Halting problém & diagonalizace

Literatura

Zeele, J.: Python programming (An introduction to computer science), Franklin, Beedle & Associates; Oregon 2004

Downey, A.: Think Python (How to think like a computer scientist), Green Tea Press; Needham, MA 2008 [www.thinkpython.com]

Wirth, N.: Algorithms + Data Structures = Programs, Prentice Hall Englewood Cliffs; New Jersey 1975

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

Annotation

The main goal of this course is to introduce the student to basic "practical" concepts of computer science (data type, variable, loop, procedure, algorithm, etc.) and methods which can be used to study these concepts theoreticaly (complexity,Turing machines...)

After attending this course, the student should be able to design, implement and "debug" a fully functional simple program in the Python programming language. He should know about standard algorithms and have a basic understanding of the idea of algorithmic complexity