DD1325 Applied Computer Science with Ethics 7.5 credits

Tillämpad datalogi med etik

In this course you will broaden your knowledge about algorithms, data structures and programming. There is also a section on computer ethics.

The programming language Python is used in the course.

  • Educational level

    First cycle
  • Academic level (A-D)

  • Subject area

    Techonology
  • Grade scale

    A, B, C, D, E, FX, F

Course offerings

Autumn 12 CLGYM for programme students

  • Periods

    Autumn 12 P1 (6.0 credits), P2 (1.5 credits)
  • Application code

    51167
  • Start date

    2012 week: 34
  • End date

    2013 week: 1
  • Language of instruction

    Swedish
  • Campus

    KTH Campus
  • Number of lectures

    28 (preliminary)
  • Number of exercises

    14 (preliminary)
  • Tutoring time

    Daytime
  • Form of study

    Normal
  • Number of places

    No limitation
  • Schedule

    Schedule (new window)
  • Course responsible

    Linda Kann <lk@kth.se>
  • Target group

    CL and students admitted to secondary year at CDATE.

  • Part of programme

Autumn 13 tildae for programme students

  • Periods

    Autumn 13 P1 (6.0 credits), P2 (1.5 credits)
  • Application code

    50098
  • Start date

    2013 week: 36
  • End date

    2014 week: 3
  • Language of instruction

    Swedish
  • Campus

    KTH Campus
  • Number of lectures

    28 (preliminary)
  • Number of exercises

    14 (preliminary)
  • Tutoring time

    Daytime
  • Form of study

    Normal
  • Number of places

    No limitation
  • Schedule

    Schedule (new window)
  • Course responsible

    Linda Kann <lk@kth.se>
  • Target group

    CL and students admitted to secondary year at CDATE. Not available for other students.

  • Part of programme

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 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,
  • identify problems where the above mentioned data structures are of use and construct simple algorithms with these,
  • analyze and evaluate ethical c,onsequences of computer applications

so that you will:

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

Course main content

Algorithms and data structures: A systematic study of the concepts abstract data types, stacks, queues, lists, trees, searching, sorting, and recursion using the knowledge the students have from the course Programming Technique. Hashing. Priority queues. Search trees. Problem trees. Text search. Simple syntax analysis. Algorithm analysis.

Programming: Program quality. Modularization. Testing. Documentation. Exceptions. System calls. Library functions.

Elementary ethics: Fundamental concepts, computer ethics.

Eligibility

Prerequisites

One of our courses Programming language: DD1310/DD1311/DD1314/DD1315/DD100N or correspong.

Literature

To be announced at least 4 weeks before the course starts at the web page for the course.

Examination

  • LAB1 - Laboratory Assignments, 3.0 credits, grade scale: P, F
  • LAB2 - Laboratory Assignments, 1.5 credits, grade scale: P, F
  • TEN1 - Examination, 3.0 credits, grade scale: A, B, C, D, E, FX, F

In this course all the regulations of the code of honor at the School of Computer science and Communication apply, see: http://www.kth.se/csc/student/hederskodex/1.17237?l=en_UK.

Offered by

CSC/Computer Science

Contact

Linda Kann, tel: 790 6292, e-post: lk@kth.se

Examiner

Linda Kann <lk@kth.se>

Version

Course plan valid from: Autumn 12.
Examination information valid from: Autumn 12.