/csoc-2019-algorithms

Repository for algorithms contributed in CSOC

Primary LanguageC++

COPS Algorithm Contribution Challenge

This repository includes your second 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 following given list. 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

  • Only one algorithm should be included in your PR from the given list.
  • Your algorithm should goes in the proper language folder in the repository.
  • You can make new folder for new language if it not exists currently.
  • Scores of different algorithms are also listed in the algorithms list.
  • Try to write code on your own rather than coying it from other sources.

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)