Skip to content

JONOULIB-CORP/TD-00-Advanced-Algorithms-and-Data-Structures

Repository files navigation

TD 00: Advanced Algorithms and Data Structures

This repository contains implementations of advanced algorithms and data structures as part of the INFO: 5059 Search Base Software Engineering course. Each exercise focuses on a specific problem and provides a Python solution along with test cases.


Exercises

1. Binary Search

  • File: binary_search.py
  • Description: Implements the Binary Search algorithm to find a target value in a sorted list.
  • Time Complexity: O(log n)

2. Graph Traversal (BFS and DFS)

  • File: graph_traversal.py
  • Description: Implements Breadth-First Search (BFS) and Depth-First Search (DFS) for traversing an undirected graph.
  • Time Complexity: O(V + E)

3. Dynamic Programming (Knapsack Problem)

  • File: knapsack_problem.py
  • Description: Solves the 0/1 Knapsack problem using dynamic programming to maximize the value within a weight limit.
  • Time Complexity: O(n * W)

4. Merge Intervals

  • File: merge_intervals.py
  • Description: Merges overlapping intervals from a given list of intervals.
  • Time Complexity: O(n log n)

5. Maximum Subarray Sum (Kadane’s Algorithm)

  • File: kadane_algorithm.py
  • Description: Finds the contiguous subarray with the maximum sum using Kadane’s Algorithm.
  • Time Complexity: O(n)

How to Run the Code

  1. Clone the Repository:
    git clone https://github.com/JONOULIB-CORP/TD-00-Advanced-Algorithms-and-Data-Structures.git
    cd TD-00-Advanced-Algorithms-and-Data-Structures

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages