Skip to content

LasithaAmarasinghe/CS-2023-Data-Structures-Algorithms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CS-2023-Data-Structures-Algorithms

This repository contains lab exercises to reinforce key concepts and practical implementations essential for computer science.


1645599766887

Module Outline

Complexity Analysis

  • Understand the need for complexity analysis.
  • Learn different expressions used for complexity analysis.
  • Apply various complexity analysis approaches to algorithms.

Recursion

  • Solve algorithmic problems using recursion.
  • Perform complexity analysis in recursive algorithms.
  • Understand and implement tail recursion.

Searching

  • Explore different searching algorithms and their applications.

Sorting Algorithms

  • Describe and analyze sorting algorithms and their complexities.
  • Compare sorting algorithms in different use cases.

Algorithm Design Techniques

  • Learn basic algorithm design techniques.
  • Solve the Knapsack problem using divide-and-conquer and greedy approaches.
  • Understand top-down and bottom-up approaches in dynamic programming.

Data Structures

  • Describe various data structures and their use cases.
  • Analyze complexities in data structure operations.
  • Implement linked lists, stacks, queues, and dictionaries.
  • Implement and analyze rooted trees.
  • Explore heap data structures and their usages.
  • Understand and apply hash tables.

Labs

Each lab focuses on implementing and analyzing the concepts covered in the module. The code for linked lists, stacks, queues, dictionaries, trees, heaps, and hash tables is included with detailed comments and complexity analysis.

Repository Contents

  • Contains lab exercises with implementations and analysis.
  • Source code for data structures and algorithms.
  • Additional documentation and resources.

Feel free to explore the repository and dive into the world of data structures and algorithms!