https://github.com/avikumar15/cp-algorithm-solutions
Solutions to cp and algorithm problems from platforms like Leetcode, Spoj, Google Contests 👨💻
https://github.com/avikumar15/cp-algorithm-solutions
algorithms cpp cpp17 data-structure dsa-algorithm interview-preparation interview-questions leetcode leetcode-cpp leetcode-solutions python spoj spoj-solutions
Last synced: 3 months ago
JSON representation
Solutions to cp and algorithm problems from platforms like Leetcode, Spoj, Google Contests 👨💻
- Host: GitHub
- URL: https://github.com/avikumar15/cp-algorithm-solutions
- Owner: avikumar15
- Created: 2020-12-24T19:13:28.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-08-01T20:01:01.000Z (almost 4 years ago)
- Last Synced: 2025-01-22T20:51:41.039Z (5 months ago)
- Topics: algorithms, cpp, cpp17, data-structure, dsa-algorithm, interview-preparation, interview-questions, leetcode, leetcode-cpp, leetcode-solutions, python, spoj, spoj-solutions
- Language: C++
- Homepage:
- Size: 73.2 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
CP & Algorithm Solutions
========
This repository contains code of cp and algorithmic problems from online coding problems### LeetCode Algorithms
| # | Title | Solution | Difficulty | Topic |
|---| ----- | -------- | ---------- | ----- |
|1|[SpiralTraversal](https://leetcode.com/problems/spiral-matrix/) | [C++](./algorithms/leetcode/cpp/Medium/Matrix/SpiralTraversal.cpp)|cpp|Medium
|2|[VerifySuduko](https://leetcode.com/problems/valid-sudoku/) | [C++](./algorithms/leetcode/cpp/Medium/Matrix/VerifySuduko.cpp)|cpp|Medium
|3|[Set0](https://leetcode.com/problems/set-matrix-zeroes/) | [C++](./algorithms/leetcode/cpp/Medium/Matrix/Set0.cpp)|cpp|Medium
|4|[Rotate90](https://leetcode.com/problems/rotate-image/) | [C++](./algorithms/leetcode/cpp/Medium/Matrix/Rotate90.cpp)|cpp|Medium
|5|[ZigZag](https://leetcode.com/problems/zigzag-conversion/) | [C++](./algorithms/leetcode/cpp/Medium/Matrix/ZigZag.cpp)|cpp|Medium
|6|[GameOfDeath](https://leetcode.com/problems/game-of-life/) | [C++](./algorithms/leetcode/cpp/Medium/Matrix/GameOfDeath.cpp)|cpp|Medium
|7|[BinarySearch2D](https://leetcode.com/problems/search-a-2d-matrix/) | [C++](./algorithms/leetcode/cpp/Medium/Matrix/BinarySearch2D.cpp)|cpp|Medium
|8|[kClosestPoints](https://leetcode.com/problems/k-closest-points-to-origin/) | [C++](./algorithms/leetcode/cpp/Medium/Heap/kClosestPoints.cpp)|cpp|Medium
|9|[TopKFrequency](https://leetcode.com/problems/top-k-frequent-elements/) | [C++](./algorithms/leetcode/cpp/Medium/Heap/TopKFrequency.cpp)|cpp|Medium
|10|[IntervalIntersection](https://leetcode.com/problems/interval-list-intersections/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/IntervalIntersection.cpp)|cpp|Medium
|11|[JumpGame](https://leetcode.com/problems/jump-game/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/JumpGame.cpp)|cpp|Medium
|12|[SortColours](https://leetcode.com/problems/sort-colors/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/SortColours.cpp)|cpp|Medium
|13|[Permutations](https://leetcode.com/problems/permutations/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/Permutations.cpp)|cpp|Medium
|14|[3SumClosest](https://leetcode.com/problems/3sum-closest/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/3SumClosest.cpp)|cpp|Medium
|15|[InplaceDuplicate](https://leetcode.com/problems/find-the-duplicate-number/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/InplaceDuplicate.cpp)|cpp|Medium
|16|[InsertInterval](https://leetcode.com/problems/insert-interval/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/InsertInterval.cpp)|cpp|Medium
|17|[RotateArray](https://leetcode.com/problems/rotate-array/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/RotateArray.cpp)|cpp|Medium
|18|[Kadane](https://leetcode.com/problems/maximum-subarray/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/Kadane.cpp)|cpp|Medium
|19|[MaxIncreaseSameSkyline](https://leetcode.com/problems/max-increase-to-keep-city-skyline/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/MaxIncreaseSameSkyline.cpp)|cpp|Medium
|20|[3Sum](https://leetcode.com/problems/3sum/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/3Sum.cpp)|cpp|Medium
|21|[MergeIntervals](https://leetcode.com/problems/merge-intervals/) | [C++](./algorithms/leetcode/cpp/Medium/Arrays/MergeIntervals.cpp)|cpp|Medium
|22|[SwapPairNodes](https://leetcode.com/problems/swap-nodes-in-pairs/) | [C++](./algorithms/leetcode/cpp/Medium/LinkedList/SwapPairNodes.cpp)|cpp|Medium
|23|[AddLinkedList](https://leetcode.com/problems/add-two-numbers/) | [C++](./algorithms/leetcode/cpp/Medium/LinkedList/AddLinkedList.cpp)|cpp|Medium
|24|[RemoveNthNodeAlone](https://leetcode.com/problems/remove-nth-node-from-end-of-list/) | [C++](./algorithms/leetcode/cpp/Medium/LinkedList/RemoveNthNodeAlone.cpp)|cpp|Medium
|25|[KthSmallestInBST](https://leetcode.com/problems/kth-smallest-element-in-a-bst/) | [C++](./algorithms/leetcode/cpp/Medium/Trees/KthSmallestInBST.cpp)|cpp|Medium
|26|[NaryPreorder](https://leetcode.com/problems/n-ary-tree-preorder-traversal/submissions/) | [C++](./algorithms/leetcode/cpp/Medium/Trees/NaryPreorder.cpp)|cpp|Medium
|27|[IsValidBST](https://leetcode.com/problems/validate-binary-search-tree/) | [C++](./algorithms/leetcode/cpp/Medium/Trees/IsValidBST.cpp)|cpp|Medium
|28|[ClonedTreeCorrespondingNode](https://leetcode.com/problems/find-a-corresponding-node-of-a-binary-tree-in-a-clone-of-that-tree/) | [C++](./algorithms/leetcode/cpp/Medium/Trees/ClonedTreeCorrespondingNode.cpp)|cpp|Medium
|29|[BalancedParanthesesScore](https://leetcode.com/problems/score-of-parentheses/) | [C++](./algorithms/leetcode/cpp/Medium/Strings/BalancedParanthesesScore.cpp)|cpp|Medium
|30|[GroupAnagrams](https://leetcode.com/problems/group-anagrams/) | [C++](./algorithms/leetcode/cpp/Medium/Strings/GroupAnagrams.cpp)|cpp|Medium
|31|[CountAndSay](https://leetcode.com/problems/count-and-say/) | [C++](./algorithms/leetcode/cpp/Medium/Strings/CountAndSay.cpp)|cpp|Medium
|32|[MinRemoveToMakeValidParantheses](https://leetcode.com/problems/minimum-remove-to-make-valid-parentheses/) | [C++](./algorithms/leetcode/cpp/Medium/Strings/MinRemoveToMakeValidParantheses.cpp)|cpp|Medium
|33|[LongestSubstringDistinctChar](https://leetcode.com/problems/longest-substring-without-repeating-characters/) | [C++](./algorithms/leetcode/cpp/Medium/Strings/LongestSubstringDistinctChar.cpp)|cpp|Medium
|34|[PossibleAnagramsPosition](https://leetcode.com/problems/find-all-anagrams-in-a-string/) | [C++](./algorithms/leetcode/cpp/Medium/Strings/PossibleAnagramsPosition.cpp)|cpp|Medium
|35|[GenerateParantheses](https://leetcode.com/problems/generate-parentheses/) | [C++](./algorithms/leetcode/cpp/Medium/Strings/GenerateParantheses.cpp)|cpp|Medium
|36|[CPUScheduler](https://leetcode.com/problems/task-scheduler/) | [C++](./algorithms/leetcode/cpp/Medium/Brute_Implementation/CPUScheduler.cpp)|cpp|Medium
|37|[FindingFirstAndLastPosition](https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/) | [C++](./algorithms/leetcode/cpp/Medium/Binary_Search/FindingFirstAndLastPosition.cpp)|cpp|Medium
|38|[SearchInRotatedArray](https://leetcode.com/problems/search-in-rotated-sorted-array/) | [C++](./algorithms/leetcode/cpp/Medium/Binary_Search/SearchInRotatedArray.cpp)|cpp|Medium
|39|[MinimumPathSum](https://leetcode.com/problems/minimum-path-sum/) | [C++](./algorithms/leetcode/cpp/Medium/Dynamic_Programming/MinimumPathSum.cpp)|cpp|Medium
|40|[EqualSubsetProblem](https://leetcode.com/problems/partition-equal-subset-sum/submissions/) | [C++](./algorithms/leetcode/cpp/Medium/Dynamic_Programming/EqualSubsetProblem.cpp)|cpp|Medium
|41|[UniquePath](https://leetcode.com/problems/unique-paths/) | [C++](./algorithms/leetcode/cpp/Medium/Dynamic_Programming/UniquePath.cpp)|cpp|Medium
|42|[CombinationSum](https://leetcode.com/problems/combination-sum/submissions/) | [C++](./algorithms/leetcode/cpp/Medium/Maths/CombinationSum.cpp)|cpp|Medium
|43|[ProductVector](https://leetcode.com/problems/product-of-array-except-self/) | [C++](./algorithms/leetcode/cpp/Medium/Maths/ProductVector.cpp)|cpp|Medium
|44|[NextPermutation](https://leetcode.com/problems/next-permutation/) | [C++](./algorithms/leetcode/cpp/Medium/Maths/NextPermutation.cpp)|cpp|Medium
|45|[IntToRoman](https://leetcode.com/problems/integer-to-roman/) | [C++](./algorithms/leetcode/cpp/Medium/Maths/IntToRoman.cpp)|cpp|Medium
|46|[RomanToInt](https://leetcode.com/problems/roman-to-integer/) | [C++](./algorithms/leetcode/cpp/Medium/Maths/RomanToInt.cpp)|cpp|Medium
|47|[XPowerN](https://leetcode.com/problems/powx-n/) | [C++](./algorithms/leetcode/cpp/Medium/Maths/XPowerN.cpp)|cpp|Medium
|48|[PhoneBook](https://leetcode.com/problems/letter-combinations-of-a-phone-number/) | [C++](./algorithms/leetcode/cpp/Medium/Backtracking/PhoneBook.cpp)|cpp|Medium
|49|[CoursePrerequisites](https://leetcode.com/problems/course-schedule/) | [C++](./algorithms/leetcode/cpp/Medium/Graphs/CoursePrerequisites.cpp)|cpp|Medium
|50|[CloneGraph](https://leetcode.com/problems/clone-graph/) | [C++](./algorithms/leetcode/cpp/Medium/Graphs/CloneGraph.cpp)|cpp|Medium
|51|[EquationSolve](https://leetcode.com/problems/evaluate-division/) | [C++](./algorithms/leetcode/cpp/Medium/Graphs/EquationSolve.cpp)|cpp|Medium
|52|[ShortestBridgeBetweenIslands](https://leetcode.com/problems/shortest-bridge/) | [C++](./algorithms/leetcode/cpp/Medium/Graphs/ShortestBridgeBetweenIslands.cpp)|cpp|Medium
|53|[TrappingRain](https://leetcode.com/problems/trapping-rain-water/) | [C++](./algorithms/leetcode/cpp/Hard/Arrays/TrappingRain.cpp)|cpp|Hard
|54|[Median](https://leetcode.com/problems/median-of-two-sorted-arrays/) | [C++](./algorithms/leetcode/cpp/Hard/Arrays/Median.cpp)|cpp|Hard
|55|[AlienDictionary](https://practice.geeksforgeeks.org/problems/alien-dictionary/1) | [C++](./algorithms/leetcode/cpp/Hard/String/AlienDictionary.cpp)|cpp|Hard
|56|[MinimumWindowSubstring](https://leetcode.com/problems/minimum-window-substring/) | [C++](./algorithms/leetcode/cpp/Hard/String/MinimumWindowSubstring.cpp)|cpp|Hard
|57|[Plus1](https://leetcode.com/problems/plus-one/) | [C++](./algorithms/leetcode/cpp/Easy/Arrays/Plus1.cpp)|cpp|Easy
|58|[RemoveDuplicateInplace](https://leetcode.com/problems/remove-duplicates-from-sorted-array/) | [C++](./algorithms/leetcode/cpp/Easy/Arrays/RemoveDuplicateInplace.cpp)|cpp|Easy
|59|[MergeSortedList](https://leetcode.com/problems/merge-two-sorted-lists/) | [C++](./algorithms/leetcode/cpp/Easy/LinkedList/MergeSortedList.cpp)|cpp|Easy
|60|[RangeSumBST](https://leetcode.com/problems/range-sum-of-bst/) | [C++](./algorithms/leetcode/cpp/Easy/Trees/RangeSumBST.cpp)|cpp|Easy
|61|[AddBinary](https://leetcode.com/problems/add-binary/) | [C++](./algorithms/leetcode/cpp/Easy/Maths/AddBinary.cpp)|cpp|Easy
|62|[DecimalToHexadecimal](https://leetcode.com/problems/convert-a-number-to-hexadecimal/) | [C++](./algorithms/leetcode/cpp/Easy/Maths/DecimalToHexadecimal.cpp)|cpp|Easy
|63|[VerifyAlienDictionary](https://leetcode.com/problems/verifying-an-alien-dictionary/) | [C++](./algorithms/leetcode/cpp/Easy/String/VerifyAlienDictionary.cpp)|cpp|Easy
|64|[ValidPalindrome](https://leetcode.com/problems/valid-palindrome-ii/) | [C++](./algorithms/leetcode/cpp/Easy/String/ValidPalindrome.cpp)|cpp|Easy
|65|[LongestCommonPrefix](https://leetcode.com/problems/longest-common-prefix/) | [C++](./algorithms/leetcode/cpp/Easy/String/LongestCommonPrefix.cpp)|cpp|Easy### Google Contest Solutions
| # | Contest Name | Title | Solution |
|---| ----- | -------- | ---------- |
|1|Codejam|[ReverseSort](https://codingcompetitions.withgoogle.com/codejam/round/000000000043580a/00000000006d0a5c) | [C++](./algorithms/google/Codejam/QualificationRound21/ReverseSort.cpp)
|2|Codejam|[CJGreedy](https://codingcompetitions.withgoogle.com/codejam/round/000000000043580a/00000000006d1145) | [C++](./algorithms/google/Codejam/QualificationRound21/CJGreedy.cpp)
|3|Codejam|[ReverseSortEngineering](https://codingcompetitions.withgoogle.com/codejam/round/000000000043580a/00000000006d12d7) | [C++](./algorithms/google/Codejam/QualificationRound21/ReverseSortEngineering.cpp)