/csoc-2021-algorithms

Repository for algorithms contributed in CSOC 2021

Primary LanguageC++

COPS Algorithm Contribution Challenge

This repository includes your first challenge of this week. To accomplish this challenge successfully you had to get a PR(pull request) merged into this repository which includes an algorithm from the list given below. Your PR is required to have proper title and description and make sure the algorithm you will be adding must go in the proper folder.

Guidelines

  • Your PR should include only one algorithm from the given list.
  • You should commit your code file in the respective language folder in the repository.
  • Scores of different algorithms are also listed in the algorithms list.
  • Try to write code on your own rather than copying it from other sources.
  • You can make a new folder for any language of your choice if it does not exist in the repo.

List of Algorithms

Searching and Sorting (Carries 1 point)

  • Linear Search
  • Binary Search
  • Jump Search
  • Interpolation Search
  • Exponential Search
  • Ternary Search
  • Breadth First Search for a Graph
  • Depth First Search for a Graph
  • Selection Sort
  • Bubble Sort
  • Insertion Sort
  • Merge Sort
  • Heap Sort
  • QuickSort
  • Pigeonhole Sort

Greedy Algorithms (Carries 2 points)

  • Activity Selection Problem
  • Kruskal’s Minimum Spanning Tree Algorithm
  • Huffman Coding
  • Prim’s Minimum Spanning Tree Algorithm
  • Dijkstra’s Shortest Path Algorithm
  • Job Sequencing Problem
  • K Centers Problem

Divide and Conquer (Carries 2 points)

  • Median of two sorted arrays
  • Count Inversions
  • Closest Pair of Points
  • Strassen’s Matrix Multiplication

String Algorithms (Carries 2 points)

  • Naive Pattern Searching
  • KMP Algorithm
  • Rabin-Karp Algorithm
  • Boyer Moore Algorithm – Bad Character Heuristic
  • Anagram Substring Search
  • Aho-Corasick Algorithm for Pattern Searching
  • Longest Even Length Substring such that Sum of First and Second Half is same

Dynamic Programming and Backtracking (Carries 3 points)

  • Longest Increasing Subsequence
  • Longest Common Subsequence
  • Edit Distance
  • Matrix Chain Multiplication
  • 0-1 Knapsack Problem
  • Longest Palindromic Subsequence
  • Egg Dropping Puzzle
  • The Knight’s tour problem
  • Rat in a Maze
  • N Queen Problem
  • Subset Sum
  • Sudoku

Graph Algorithms (Carries 3 points)

  • Longest Path in a Directed Acyclic Graph
  • Topological Sorting
  • Snake and Ladder Problem
  • Biconnected Components
  • Articulation Points (or Cut Vertices) in a Graph
  • Strongly Connected Components
  • Travelling Salesman Problem (Approximate using MST)