This git repository contains Python implementations of various algorithms and graphs commonly used in computer science, as well as applications of these algorithms to solve real-world problems.
- EdmondsKarp_backtrack.py: Implementation of the Edmonds-Karp algorithm using backtrack to find augmenting paths in a network flow problem.
- Google_page_rank_algorithm.py: Implementation of Google's PageRank algorithm to rank the popularity of web pages based on the links between them.
- Knapsack_application.py: An algorithm based on the Knapsack problem to select a minimum number of influencers who will cover all followers in a social network.
- Kruskal_application.py: Solution for connecting all possible points in a graph of nodes with maximum possible distance using the Kruskal algorithm. This application is based on connecting trees in a park for a slackline game.
- power.py: Implementation of matrix exponentiation using the naive method and the divide and conquer method to compare their performance.
- product.py: Implementation of matrix multiplication algorithms using the naive method and the Strassen algorithm to compare their performance.