Skip to content

chrismessiah/KTH-AppliedComputerScience

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KTH-AppliedComputerScience

This is a course on algorithms and data structures using Python for lab work. The course is given in Swedish.

Labs

  • Lab 1: Files, classes and lists in Python
  • Lab 2: Datastructure: Queue
  • Lab 3: Binary trees
  • Lab 4: Breadth-first search
  • Lab 5: Hash-tables
  • Lab 6: Syntaxcheck med Kattis
  • Lab 7: Molecular weight

Intended learning outcomes

In this course you will broaden your knowledge about algorithms, data structures and programming. The programming language Python is used in the course.

After the course you will have learned to

  • systematically test programs to discover errors,
  • use abstraction as a tool to simplify programming,
  • choose a suitable algorithm for a given problem,
  • compare algorithms with respect to time and memory usage,
  • describe different algorithms for searching and sorting and their properties,
  • devise and implement recursive algorithms,
  • write a small BNF syntax (less than 10 rules) for a formal language and write a program to check if an expression conforms to the syntax,
  • model real problems as search problems and implement algorithms for breadth first, depth first and best first search,
  • describe basic compression algorithms and know in which types of compression they are used,
  • construct an automaton for text search and describe how it works,
  • implement and use stacks and queues,
  • implement insertion, traversal and search operations in binary search trees and general trees, and use these,
  • implement and use hash tables and hash functions,
  • use priority queues,
  • use simple encryption algorithms, and explain the principles of assymetric encryption
  • identify problems where the above mentioned data structures are of use and construct simple algorithms with these,

so that you will:

  • become proficient in solving problems with programming,
  • be able to use computer science methods in projects in different applications and
  • acquire sufficient grounding to be able to enroll in follow-up courses in computer science.

About

DD1320 Applied Computer Science (Tilda)

Resources

Stars

Watchers

Forks

Contributors

Languages