fhildeb / ba-algorithms-and-data-structures

HSMW BA Algorithms and Data Structures Course

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ba-algorithms-and-data-structures

HSMW Algorithms and Data Structures Course from the University of Applied Science Mittweida in the subject algorithmic theory that took place in 2018.

NOTE: Commentary might appear in German.

Course Content

Algorithms are the bedrock of any computational process. Their role is central in making decisions, performing calculations, and processing data. The course dove deep into the theory of algorithmic computation and ventured into the intricate world of algorithms, their characteristics, and their efficiency.

We probed the realm of searching and sorting algorithms, assessing their efficiency and role in structuring data. We also gained a deep understanding of various data structures that aid in organizing data and manage parallelism.

Core Features

  • Characteristics of algorithms
  • Measuring efficiency of algorithms
  • Search and sort algorithms
  • Data structures for organizing data
  • Hash tables, Heaps and Tries
  • Algorithmic design techniques
  • Parallel and Randomized algorithms

Repository Content

All project folders have their own project description and showcase.

The first two projects focus on basic data structures and search algorithms. They include terminal-based applications like array and matrix measures and lists and search applications. These projects introduce practical tools for array creation and formatting, matrix calculations, semi-magic square checking, and an intricate Snail Matrix Algorithm. A double-linked list framework and a search algorithm benchmark are also part of the toolbox.

  1. Array and Matrix Measures
    • Array Creation and Formatting Tool
    • Matrix Calculation Tool
    • Semimagic Square Checker
    • Snail Matix Algorithm
  2. Lists and Search Applications
    • Double Linked List Framework
    • Search Algorithm Benchmark Tool

Projects 3 to 5 use the Unity game engine and are standalone project, showcasing the power of visualization in understanding complex algorithms. Unity can render graphics in real-time, which is perfect for visually interpreting the process and flow of algorithms. In these projects, you can explore visual implementations of the selection and insertion sort algorithms and inspect and build a graphical representation of a spanning tree generated from a given graph.

  1. Visual Graph Spanning Tree Generation
  2. Visual Implementation of the Selection Sort Algorithm
  3. Visual Implementation of the Insertion Sort Algorithm

Tools

About

HSMW BA Algorithms and Data Structures Course


Languages

Language:C# 74.1%Language:Java 25.9%