This is an old revision of the document!


Transdisciplinary Data Structures (STS250) in Spring 2019 at KAIST

  1. Mathematical and Boolean basics and circuits
  • induction, recursion, and recurrences
  • graph terminology and properties: directed acyclic
  • basis, addition, carry-look-ahead, multiplication, MUX

- Basic mathematical data types and operations

  • boolean, non-negative integer, integer, character
  • representation in digital computer
  • algorithmic primitives

- Combining mathematical data types

  • tuple, finite sequence, un/directed labeled graph
  • representation in digital computer

- Computational problems and algorithmic solutions

  • polynomial multiplication, matrix multiplication
  • asymptotic growth, recurrences and their solutions

- Searching and Sorting

  • linear search, binary search, bubble sort, bucket s * Unordered List Itemort
  • specification and analysis of the above algorithms
  • mergesort, quicksort, linear-time median
  • lower bound for comparison-based sorting

- Linked Data Structures

  • lists: singly/doubly-linked; search/traverse, insert/delete
  • queue=FiFo, stack=LiFo
  • binary trees: terminology, BFS/DFS/search, insert/delete/balance

- Basic Graph Problems and Algorithms

  • Un-/directed graph terminology and properties
  • Shortest unweighted path: BFS
  • single source shortest weighted path: Dijkstra

- Abstract Data Types and their implementations

  • stack, queue, priority queue, dynamic array, …