AnuragQ / DSA

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

# DSA



data structures and algorithms problems and notes

# DSA



data structures and algorithms problems and notes


priority
1. this list
2. interview prep - ~600
3. leetcode - medium - 766, hard - 319  
4. gfg past questions,codechef
5. leetcode (easy - 407)
6. os

pbc references-
-https://github.com/Jasbir96/PBC/blob/master/reference.md
-https://github.com/Jasbir96/Dev_June_20
-https://github.com/ujjwal8571/coding-interview-university#recursion
-https://github.com/rajneeshkumar146
-https://docs.google.com/spreadsheets/d/1XdXJbn9NC7fx1CeavItkxR0Yos8rQAC9xXjnH4-f6Eg/edit#gid=0 (IP questions sheet)
-https://drive.google.com/drive/u/0/folders/1P7iMz272rtH3WXemcf2z2waQuX0m6cUU (IP notes)
-https://www.youtube.com/watch?v=Qc2ieXRgR0k&feature=youtu.be&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b&t=1718 (DSA lectures interesting)

personal resources
-https://docs.google.com/spreadsheets/d/1jUuH7D57FP4B5pPBu3KKofW6bUeF-YxkDWZQ-7ha16I/edit?usp=sharing (company sheet)
-https://www.geeksforgeeks.org/binary-tree-set-3-types-of-binary-tree/


resources for dbms-
-https://www.youtube.com/playlist?list=PLmXKhU9FNesR1rSES7oLdJaNFgmuj0SYV

misc resources-
-https://www.geeksforgeeks.org/must-do-coding-questions-for-companies-like-amazon-microsoft-adobe/?ref=leftbar-rightbar
-https://drive.google.com/drive/u/0/folders/1uJpMlxP7wethLEzk_uO0zv2W1TCY56yY
https://leetcode.com/discuss/interview-question/437082/Amazon-Behavioral-questions-or-Leadership-Principles-or-LP#:~:text=Tell%20me%20about%20a%20time%20when%20you%20had%20to%20face,how%20did%20you%20resolve%20them%3F

system design resources-
-http://highscalability.com/start-here/

mcqs quiz-
-https://www.geeksforgeeks.org/quiz-corner-gq/


daily 5hr
weekend 10hr	
total - 45hr 
1. array
	1.1. MatrixMultiplication		done
	1.2. WaveTraversal			done
	1.3. SpiralDisplay			done
	1.4. ExitPoint				
	1.5. RotateBy90				done
	1.6. ShellRotate						Todo
	1.7. Diagonal Traversal			done
	1.8. SaddlePoint 			done
 	1.9. SearchIn2dArray			done
	1.10. SubArrayTargetSum			done	https://www.geeksforgeeks.org/find-subarray-with-given-sum/
	1.11. EquilibriumIndex			done	https://www.geeksforgeeks.org/equilibrium-index-of-an-array/
	1.12. ConvertZigZag			done	https://www.geeksforgeeks.org/convert-array-into-zig-zag-fashion/
	1.13. PairTargetDifference		done	https://www.geeksforgeeks.org/find-a-pair-with-the-given-difference/
	1.14. ChocolateDistribution		done	https://www.geeksforgeeks.org/chocolate-distribution-problem/
	1.15. MinPlatforms				https://www.geeksforgeeks.org/minimum-number-platforms-required-railwaybus-station/ https://www.interviewbit.com/problems/meeting-rooms/
	1.16. KSmallestSumPair			done	https://www.geeksforgeeks.org/find-k-pairs-smallest-sums-two-arrays/
	1.17. SearchInSortedPivoted			https://www.geeksforgeeks.org/search-an-element-in-a-sorted-and-pivoted-array/
	1.18. PairInSortedPivoted			https://www.geeksforgeeks.org/given-a-sorted-and-rotated-array-find-if-there-is-a-pair-with-a-given-sum/
	1.19. RearrangePositiveAndNegative		https://www.geeksforgeeks.org/rearrange-positive-and-negative-numbers-publish/
	1.20. LargestSubArrayWithEqual01	done	https://www.geeksforgeeks.org/largest-subarray-with-equal-number-of-0s-and-1s/
	1.21. Segregate01 (todo-pivot approach)	done	https://www.geeksforgeeks.org/segregate-0s-and-1s-in-an-array-by-traversing-array-once/
	1.22. Sort012				done	https://www.geeksforgeeks.org/sort-an-array-of-0s-1s-and-2s/	 https://leetcode.com/problems/sort-colors/
	1.23. MoveZerosToEnd			done	https://www.geeksforgeeks.org/move-zeroes-end-array-set-2-using-single-traversal/
	1.24. LargestSumContiguousSubArray	done	https://www.geeksforgeeks.org/largest-sum-contiguous-subarray/ https://leetcode.com/problems/maximum-subarray/submissions/
	1.25. KConcatenation				https://www.codechef.com/problems/KCON  https://leetcode.com/problems/k-concatenation-maximum-sum/
	1.26. MaxContiguousCircularSum			https://www.geeksforgeeks.org/maximum-contiguous-circular-sum/
	1.27. ReorderArrayUsingGivenIndeces	done	https://www.geeksforgeeks.org/reorder-a-array-according-to-given-indexes/  
	1.28. MinMergesToMakePalindrome		done	https://www.geeksforgeeks.org/find-minimum-number-of-merge-operations-to-make-an-array-palindrome/
	1.29. MaxProductSubarray		done-rev	https://www.geeksforgeeks.org/maximum-product-subarray/ https://leetcode.com/problems/maximum-product-subarray/
	1.30. MaxDiffElementsLargerAfter	done	https://www.geeksforgeeks.org/maximum-difference-between-two-elements/
	1.31. MinswapsKelements			done	https://www.geeksforgeeks.org/minimum-swaps-required-bring-elements-less-equal-k-together/
	1.32. SmallestPositiveSubsetSum		done	https://www.geeksforgeeks.org/find-smallest-value-represented-sum-subset-given-array/
	1.33. GenerateSortedArrayAlternateElms		https://www.geeksforgeeks.org/generate-all-possible-sorted-arrays-from-alternate-elements-of-two-given-arrays/
	1.34. MaxLengthBitonicSubarray		done	https://www.geeksforgeeks.org/maximum-length-bitonic-subarray/ 	https://www.geeksforgeeks.org/maximum-length-bitonic-subarray-set-2-time-o1-space/
	1.35. LargestArraySumDivisibleByK	done	https://www.geeksforgeeks.org/longest-subarray-sum-divisible-k/
	1.36. NextPermutation				https://leetcode.com/problems/next-permutation/
	1.37. MergeOverlappingInterval			https://www.geeksforgeeks.org/merging-intervals/ https://leetcode.com/problems/merge-intervals/
	1.38. ThreeWayPartition				https://www.geeksforgeeks.org/three-way-partitioning-of-an-array-around-a-given-range/
	1.39. MinimizeMaxDistBetweenHeights		www.geeksforgeeks.org/minimize-the-maximum-difference-between-the-heights/ www.interviewbit.com/problems/minimise-the-maximum-difference-between-the-heights/
	1.40. LargestSumSubArrayKnumbers		https://www.geeksforgeeks.org/largest-sum-subarray-least-k-numbers/  
	1.41. MaxSum3OverlappingSubArrays		https://leetcode.com/problems/maximum-sum-of-3-non-overlapping-subarrays/
	1.42. FourSum					https://www.geeksforgeeks.org/find-four-elements-that-sum-to-a-given-value-set-2/
	1.43. MaxSumNonAdjacent				https://www.geeksforgeeks.org/maximum-sum-such-that-no-two-elements-are-adjacent/
	1.44. CommonElementsThreeSorted			https://www.geeksforgeeks.org/find-common-elements-three-sorted-arrays/
	1.45. CountTripletSumLessThanK			https://www.geeksforgeeks.org/count-triplets-with-sum-smaller-that-a-given-value/
	1.46. CountSubarrayTargetSum		done 	https://www.geeksforgeeks.org/number-subarrays-sum-exactly-equal-k/ https://leetcode.com/problems/subarray-sum-equals-k/
	1.47. CountSubarraySumDivisibleByK	done	https://leetcode.com/problems/subarray-sums-divisible-by-k/	
	1.48. LeftFloor				done	https://www.geeksforgeeks.org/largest-element-smaller-than-current-element-on-left-for-every-element-in-array/
	1.49. MinDistanceBWNumbers			https://www.geeksforgeeks.org/find-the-minimum-distance-between-two-numbers/
	1.50. IsToeplitz				https://leetcode.com/problems/toeplitz-matrix/ https://www.geeksforgeeks.org/find-if-given-matrix-is-toeplitz-or-not/
	1.51. ContainerWithMostWater			https://leetcode.com/problems/container-with-most-water/
https://leetcode.com/problems/shortest-subarray-with-sum-at-least-k/
https://leetcode.com/problems/teemo-attacking/
https://www.lintcode.com/problem/sort-transformed-array/description https://www.geeksforgeeks.org/sort-array-applying-given-equation/
https://www.geeksforgeeks.org/minimum-distance-between-words-of-a-string/ https://www.lintcode.com/problem/shortest-word-distance/description
https://leetcode.com/articles/shortest-word-distance-ii/#
https://tonycao.gitbooks.io/leetcode-locked/content/LeetCode%20Locked/c1.4.html https://www.programcreek.com/2014/08/leetcode-shortest-word-distance-iii/
https://www.geeksforgeeks.org/check-if-two-given-strings-are-at-edit-distance-one/ https://www.lintcode.com/en/old/problem/one-edit-distance/
https://leetcode.com/problems/positions-of-large-groups/
https://www.geeksforgeeks.org/segregate-even-and-odd-numbers/ https://leetcode.com/problems/sort-array-by-parity/ https://leetcode.com/problems/sort-array-by-parity-ii/
https://leetcode.com/problems/beautiful-arrangement-ii/
https://leetcode.com/problems/array-nesting/
https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/
CircularArrayLoop					https://leetcode.com/problems/circular-array-loop/ https://www.geeksforgeeks.org/check-loop-array-according-given-constraints/
https://xiaoguan.gitbooks.io/leetcode/content/LeetCode/548-split-array-with-equal-sum-medium.html
https://leetcode.com/problems/best-sightseeing-pair/
https://leetcode.com/problems/pour-water/
https://leetcode.com/problems/3sum-closest/
https://leetcode.com/problems/circular-array-loop/
https://leetcode.com/problems/ambiguous-coordinates/
https://leetcode.com/problems/compare-version-numbers/
https://www.lintcode.com/problem/range-addition/description
GlobalLocalInversions					https://leetcode.com/problems/global-and-local-inversions/
FlipStringToMonotonicIncreasing				https://leetcode.com/problems/flip-string-to-monotone-increasing/ https://www.geeksforgeeks.org/minimum-flips-make-1s-left-0s-right-set-2/
(optional)LongestConsecutiveOnes1swap			https://www.geeksforgeeks.org/length-of-longest-consecutive-ones-by-at-most-one-swap-in-a-binary-string/
MaxConsecutiveOnesKswaps				https://leetcode.com/problems/max-consecutive-ones-iii/ https://www.geeksforgeeks.org/longest-subsegment-1s-formed-changing-k-0s/
NextGreaterElement3					https://leetcode.com/problems/next-greater-element-iii/
TotalWidthOfArray					https://www.geeksforgeeks.org/sum-of-width-max-and-min-diff-of-all-subsequences/
ShortestPalindrome					https://leetcode.com/problems/shortest-palindrome/ https://www.geeksforgeeks.org/minimum-characters-added-front-make-string-palindrome/
CountSubarrayProductLessThanK				https://leetcode.com/problems/subarray-product-less-than-k/
CountSubseqProductLessThanK				https://www.geeksforgeeks.org/count-subsequences-product-less-k/

2. Recursion
	2.1. TowerOfHanoi		done
	2.2. MaxOfArray			done
	2.3. FirstIndex			done
	2.4. LastIndex			done
	2.5. AllIndices			done
	2.6. GetSubsequence		done
	2.8. GetKPC			done
	2.9. GetStairPaths		done
	2.10. GetMazePaths		done
	2.11. GetMazePathWithJumps	done
	2.12. PrintKPC			done
	2.13. PrintStairPaths		done
	2.14. PrintSubsequence		done
	2.15. PrintMazePathWithJumps	done
	2.16. PrintPermutations		done
	2.17. PrintEncoding		done
	2.18. Floodfill			done	
	2.19. TargetSum Subsets		done       
	2.20. NQueens			done
	2.21. KnightsTour					Todo
	2.22. Sudoku
	2.23. MagnatePuzzle
	2.24. RatMaze2Direction					https://www.geeksforgeeks.org/rat-in-a-maze-backtracking-2/			
	2.25. RatMazeAllDirection				https://www.geeksforgeeks.org/rat-in-a-maze-problem-when-movement-in-all-possible-directions-is-allowed
	2.26. WordBreakProblem					https://www.geeksforgeeks.org/word-break-problem-using-backtracking/
	2.27. CombinationalSum					https://www.geeksforgeeks.org/combinational-sum/
	2.28. KSubSetEqualSum					https://www.geeksforgeeks.org/partition-set-k-subsets-equal-sum/
	2.29. MatchPatternWithoutRegex				https://www.geeksforgeeks.org/match-a-pattern-and-string-without-using-regular-expressions/
	2.30. LongestRouteHurdleMatrix				https://www.geeksforgeeks.org/longest-possible-route-in-a-matrix-with-hurdles/
	2.31. Cryptarithmatic					https://www.geeksforgeeks.org/solving-cryptarithmetic-puzzles-backtracking-8/
	2.32. CrosswordPuzzleProblem				https://www.geeksforgeeks.org/solve-crossword-puzzle/
	2.33. PrintPalindromicPartitions			https://www.geeksforgeeks.org/print-palindromic-partitions-string/
	2.34. LandMines						https://www.geeksforgeeks.org/find-shortest-safe-route-in-a-path-with-landmines/
	2.35. RemoveInvalidParenthesis				https://leetcode.com/problems/remove-invalid-parentheses/ https://www.geeksforgeeks.org/remove-invalid-parentheses/ https://www.interviewbit.com/problems/remove-invalid-parentheses/
	2.36. TugOfWar						https://www.geeksforgeeks.org/tug-of-war/
	2.37. LargestPermutationKswaps				https://www.geeksforgeeks.org/largest-permutation-k-swaps/ https://www.geeksforgeeks.org/find-maximum-number-possible-by-doing-at-most-k-swaps/
	2.38. PathsCornerToMiddle				https://www.geeksforgeeks.org/find-paths-from-corner-cell-to-middle-cell-in-maze/

3. DP (r-recursion, m-memoized, i-iterative) and Greedy

	3.1. Fibonacci-dp				  m
	3.2. Climb Stairs				    i
	3.3. Climb Stairs With Variable Jumps		  m i
	3.4. Climb Stairs With Minimum Moves		r m i
	3.5. Min Cost In Maze Traversal			r m 
	3.6. Goldmine					  m
	3.7. Target Sum Subsets - Dp			r m 
	3.8. Coin Change Combination			  m i 
	3.9. Coin Change Permutations			    i
	3.10. Zero One Knapsack				r m
	3.11. Unbounded Knapsack      			  m
	3.12. Count Binary Strings			    i
	3.13. Arrange Buildings     			    i
	3.14. Count Encodings  				  m
	3.15. Count A+b+c+ Subsequences			r
	3.16. Maximum Sum Non Adjacent Elements		r
	3.17. Paint House				  m		http://tiancao.me/Leetcode-Unlocked/LeetCode%20Locked/c1.15.html
	3.18. Paint House - Many Colors			  m
	3.19. Paint Fence				r m		https://cheonhyangzhang.gitbooks.io/leetcode-solutions/content/276-paint-fence.html https://www.geeksforgeeks.org/painting-fence-algorithm/
	3.20. Tiling With 2 * 1 Tiles			  m
	3.21. Tiling With M * 1 Tiles			  m
	3.22. Friends Pairing 				r m
	3.23. Partition Into Subsets			r
	3.24. BuyAndSellStocks OTA			    i
	3.25. BuyAndSellStocks ITA			r
	3.26. BuyAndSellStocksWithTransactionFee ITA	r
	3.27. BuyAndSellStocksWithCooldown -ITA			Todo
	3.28. BuyAndSellStocks Two TA				Todo
	3.29. BuyAndSellStocks K T				Todo
	3.30. Longest Increasing Subsequence		r m i
	3.31. Maximum Sum Increasing Subsequence	r
	3.32. Longest Bitonic Subsequence		r
	3.33. Maximum Non-overlapping Bridges			Todo
	3.34. Russian Doll Envelopes			    i		https://leetcode.com/problems/russian-doll-envelopes/
	3.35. Longest Common Subsequence		r
	3.36. Longest Palindromic Subsequences		r
	3.37. Count Palindromic Subsequences			Todo
	3.38. Count Palindromic Substrings			Todo
	3.39. Longest Palindromic Substring			Todo
https://leetcode.com/problems/sum-of-subsequence-widths/
https://leetcode.com/problems/2-keys-keyboard/
https://www.geeksforgeeks.org/bitmasking-and-dynamic-programming-set-1-count-ways-to-assign-unique-cap-to-every-person/ 
https://leetcode.com/problems/distinct-subsequences/ https://www.interviewbit.com/problems/distinct-subsequences/
https://www.geeksforgeeks.org/number-subsequences-form-ai-bj-ck/
https://leetcode.com/problems/arithmetic-slices/
https://leetcode.com/problems/scramble-string/
https://leetcode.com/problems/cherry-pickup/
https://www.geeksforgeeks.org/optimal-binary-search-tree-dp-24/
https://www.geeksforgeeks.org/find-number-valid-parentheses-expressions-given-length/ https://leetcode.com/problems/generate-parentheses/
https://leetcode.com/problems/tiling-a-rectangle-with-the-fewest-squares/ https://www.geeksforgeeks.org/paper-cut-minimum-number-squares-set-2/ https://www.geeksforgeeks.org/paper-cut-minimum-number-squares/
https://leetcode.com/problems/maximal-square/
https://leetcode.com/problems/maximal-rectangle/
https://www.interviewbit.com/problems/rod-cutting/ https://www.geeksforgeeks.org/cutting-a-rod-dp-13/
JumpGame1						https://leetcode.com/problems/jump-game/
JumpGame2						https://leetcode.com/problems/jump-game-ii/
CalculateEditDistance					https://www.geeksforgeeks.org/edit-distance-dp-5/ https://leetcode.com/problems/edit-distance/
CheckOneEditDistance					https://www.geeksforgeeks.org/check-if-two-given-strings-are-at-edit-distance-one/
RottenOranges						https://leetcode.com/problems/rotting-oranges/
https://leetcode.com/problems/super-egg-drop/ https://brilliant.org/wiki/egg-dropping/
LongestPrefixSuffix					https://www.geeksforgeeks.org/longest-prefix-also-suffix/
BurstBaloons						https://leetcode.com/problems/burst-balloons/
LongestConsecutiveSubsequence				https://www.geeksforgeeks.org/longest-consecutive-subsequence/

4. Stacks and Queues
	4.1. NGE				done
	4.2. StockSpan				done
	4.3. LargestAreaHistgram		done
	4.4. SlidingWindowMaximum		done
	4.5. SmallestNumberFollowingPattern	done
	4.6. CelebrityProblem			done
	4.7. MinStack				done
	4.8. MinStack_2					Todo
	4.9. TwoStack				done
	4.10. Kstack
	4.11. MergeOverlappingInterval
	4.12. PetrolPumpProblem

5. LinkedList
	5.1. ReverseDataIterative		done
	5.2. ReverseDataRecursive		done
	5.3. ReversePointerIterative		done
	5.4. ReversePointerRecursive		done
	5.5. KReverseMulti				Todo
	5.6. MidPoint				done
	5.7. KthFromLast			done	https://www.geeksforgeeks.org/nth-node-from-the-end-of-a-linked-list/
	5.8. MergeTwoSortedLL			done		https://www.geeksforgeeks.org/merge-two-sorted-lists-place/
	5.9. RemoveDuplicatesInSortedLL		done
	5.10. OddEvenLL				done		https://www.geeksforgeeks.org/segregate-even-and-odd-elements-in-a-linked-list/
	5.11. IsPalindrome			done
	5.12. Fold					Todo	https://www.geeksforgeeks.org/rearrange-a-given-linked-list-in-place/
	5.13. Unfold					
	5.14. AddTwoLL					Todo	https://www.geeksforgeeks.org/add-two-numbers-represented-by-linked-lists/
	5.15. IntersectionPoint			done		https://leetcode.com/problems/intersection-of-two-linked-lists/ 
	5.17. CloneLLWithRandomPointer				https://www.geeksforgeeks.org/a-linked-list-with-next-and-arbit-pointer/
	5.18. FloydCycle
	5.19. GetAddRemove			done
	5.20. DeleteNodeOnlyNodeReference	done		https://www.geeksforgeeks.org/in-a-linked-list-given-only-a-pointer-to-a-node-to-be-deleted-in-a-singly-linked-list-how-do-you-delete-it/ https://leetcode.com/problems/delete-node-in-a-linked-list/
	5.21. RemoveDuplicatesUnsortedLL			https://www.geeksforgeeks.org/remove-duplicates-from-an-unsorted-linked-list/
	5.22. DeleteGreaterNodesOnRight				https://www.geeksforgeeks.org/delete-nodes-which-have-a-greater-value-on-right-side/ https://www.geeksforgeeks.org/delete-nodes-which-have-a-greater-value-on-right-side-using-recursion/
	5.23. ThreeLinkedListTripletSum				https://www.geeksforgeeks.org/find-a-triplet-from-three-linked-lists-with-sum-equal-to-a-given-number/
	5.24. FlattenMultilevel					https://www.geeksforgeeks.org/flatten-a-linked-list-with-next-and-child-pointers/ https://www.geeksforgeeks.org/flatten-a-multi-level-linked-list-set-2-depth-wise/
	5.25. FlattenLLSorted					https://www.geeksforgeeks.org/flattening-a-linked-list/		
	5.26. PointToNextLarger					https://www.geeksforgeeks.org/point-to-next-higher-value-node-in-a-linked-list-with-an-arbitrary-pointer/
	5.27. PointToNextLarderRightSide			https://www.geeksforgeeks.org/point-arbit-pointer-greatest-value-right-side-node-linked-list/
	5.28. Zigzag						https://www.geeksforgeeks.org/linked-list-in-zig-zag-fashion/
	5.39. SortAbsoluteSortesLL				https://www.geeksforgeeks.org/sort-linked-list-already-sorted-absolute-values/
	5.40. SubtractNumberRepresentedByLL			https://www.geeksforgeeks.org/subtract-two-numbers-represented-as-linked-lists/
	5.41. PairSumSortedLL					https://www.geeksforgeeks.org/find-pair-given-sum-sorted-singly-linked-without-extra-space/
	5.42. MultiplyTwoLL					https://www.geeksforgeeks.org/multiply-two-numbers-represented-linked-lists/
	5.43. RotateLLBlockwise					https://www.geeksforgeeks.org/rotate-linked-list-block-wise/
	5.44. JosephusCircleCLL		o(n) complexity tbd			https://www.geeksforgeeks.org/josephus-circle-using-circular-linked-list/
	5.45. CountedTripletsTargetSumSortedDLL			https://www.geeksforgeeks.org/count-triplets-sorted-doubly-linked-list-whose-sum-equal-given-value-x/
	5.46. SortBitonicDLL					https://www.geeksforgeeks.org/sort-biotonic-doubly-linked-list/
	5.47. SortKSortedDLL					https://www.geeksforgeeks.org/sort-k-sorted-doubly-linked-list/

6. GenericTrees
	6.1. SizeSumMaxHeight			Done
	6.2. Traversals(pre-post-level--iterative-recursive) Todo
	6.3. RemoveLeaves			Done
	6.4. Linearize				Done
	6.5. Find				Done
	6.6. NodeToRootPath			Done
	6.7. LCA				done
	6.8. DistanceBetweenTwoNodes		done
	6.9. PredecessorAndSuccessor		done
	6.10. CeilAndFloor			done
	6.11. KthLargestElement			done
	6.12. NodeWithMaxSum			done
	6.13. Diameter				done

7. BinaryTree 
	7.1. SizeSumMaxHeight						
	7.2. Traversals(pre-post-in-level--iterative-recursive)	done
	7.3. NodeToRootPath
	7.4. PrintKLevelsDown				done
	7.5. PathToLeafFromRootInRange			Done
	7.6. TransFormToLeftCloneTreeAndReverse			https://www.geeksforgeeks.org/double-tree/
	7.7. PrintSingleChildNodes			Done
	7.8. RemoveLeaves				Done
	7.9. PrintNodesAtKDitstance			done	https://www.geeksforgeeks.org/print-nodes-distance-k-given-node-binary-tree/
	7.10. IsBalanced				done
	7.11. IsBST					done
	7.12. TreeFromInPre				done
	7.13. TreeFromInPost				done
	7.14. TreeFromPrePost(condition - tree is full BT)
	7.15. TreeFromInLevel
	7.16. MultiSolver
	7.17. LCA						https://www.geeksforgeeks.org/lowest-common-ancestor-binary-tree-set-1/
	7.18. Diameter(normal + efficient) 		normal-done efficient-todo
	7.19. LargestBst				done
	7.20. RootToLeafPathTargetSum			done  	https://www.geeksforgeeks.org/root-to-leaf-path-sum-equal-to-a-given-number/	
	7.21. MaxSumN2L	
	7.22. MaxSumL2L					done	https://www.geeksforgeeks.org/find-maximum-path-sum-two-leaves-binary-tree/
	7.23. MaxSumN2N					done	https://www.geeksforgeeks.org/find-maximum-path-sum-in-a-binary-tree/
	7.24. TreeFromParentArray				https://www.geeksforgeeks.org/construct-a-binary-tree-from-parent-array-representation/
	7.25. TreeFromPerfectArray(CompleteBinaryTreeFromGivenLevelOrder)
	7.26. TopView					done
	7.27. BottomView				done
	7.28. LeftView					done	https://www.geeksforgeeks.org/print-left-view-binary-tree/
	7.29. RightView					done
	7.30. BoundaryTraversal					https://www.geeksforgeeks.org/boundary-traversal-of-binary-tree/
	7.31. VerticalSum				done	https://www.geeksforgeeks.org/vertical-sum-in-a-given-binary-tree/ https://www.geeksforgeeks.org/vertical-sum-in-binary-tree-set-space-optimized/
	7.32. TreeToLL						https://www.geeksforgeeks.org/in-place-convert-a-given-binary-tree-to-doubly-linked-list/
	7.33. LLtoTree					ASK
	7.34. TreeToCLL						https://www.geeksforgeeks.org/convert-a-binary-tree-to-a-circular-doubly-link-list/
	7.35. CLLtoTree					ASK
	7.36. TiltBT						https://www.geeksforgeeks.org/tilt-binary-tree/
	7.37. CloneWithRandomPointer				https://www.geeksforgeeks.org/clone-binary-tree-random-pointers/
	7.38. SubtreeTargetSum					https://www.geeksforgeeks.org/count-subtress-sum-given-value-x/
	7.39. InorderWithoutRecusrion				https://www.geeksforgeeks.org/inorder-tree-traversal-without-recursion/
	7.40. InorderWithoutRecusrionWithoutStack		https://www.geeksforgeeks.org/inorder-tree-traversal-without-recursion-and-without-stack/
	7.41. MorrisTraversalPreorder				https://www.geeksforgeeks.org/morris-traversal-for-preorder/
	7.42. DiagonalTraversal 				https://www.geeksforgeeks.org/diagonal-traversal-of-binary-tree/						
	7.43. VerticalTraversal					https://www.geeksforgeeks.org/print-binary-tree-vertical-order/
	7.44. NextNodeInLevelOrder 				https://www.geeksforgeeks.org/find-next-right-node-of-a-given-key/				
	7.45. SpecialTreeFromPreorder				https://www.geeksforgeeks.org/construct-a-special-tree-from-given-preorder-traversal/
	7.50. DLLFromTernaryTree				https://www.geeksforgeeks.org/create-doubly-linked-list-ternary-ree/
	7.51. DeepestLeftLeaf					https://www.geeksforgeeks.org/deepest-left-leaf-node-in-a-binary-tree/					
	7.52. ConvertToSumTree					https://www.geeksforgeeks.org/convert-a-given-tree-to-sum-tree/
	7.53. ConvertToLeftSubtreeSum				https://www.geeksforgeeks.org/change-a-binary-tree-so-that-every-node-stores-sum-of-all-nodes-in-left-subtree/
	7.54. ConnectLeavesInDLL  popular			https://www.geeksforgeeks.org/connect-leaves-doubly-linked-list/					
	7.55. EvenForrest					https://www.geeksforgeeks.org/convert-tree-forest-even-nodes/
	7.56. DistanceBetweenTwoNodes				https://www.geeksforgeeks.org/find-distance-between-two-nodes-of-a-binary-tree/
	7.57. PopulateInorderSuccessor				https://www.geeksforgeeks.org/populate-inorder-successor-for-all-nodes/
	7.58. MaxWidth						https://www.geeksforgeeks.org/maximum-width-of-a-binary-tree/	
	7.59. MaxRootToLeafPath					https://www.geeksforgeeks.org/find-the-maximum-sum-path-in-a-binary-tree/
	7.60. ReverseAlternateLevels				https://www.geeksforgeeks.org/reverse-alternate-levels-binary-tree/
	7.61. DiagonalSum					https://www.geeksforgeeks.org/diagonal-sum-binary-tree/
	7.62. IsSubtreeOfAnother 				https://www.geeksforgeeks.org/check-if-a-binary-tree-is-subtree-of-another-binary-tree/
	7.63. SpecificLevelOrderTrraversal			https://www.geeksforgeeks.org/perfect-binary-tree-specific-level-order-traversal/
	7.64. HeightOfBTFromParentArray				https://www.geeksforgeeks.org/find-height-binary-tree-represented-parent-array/		
	7.65. RemoveLeafKLengthPaths				https://www.geeksforgeeks.org/remove-nodes-root-leaf-paths-length-k/
	7.66. SerializeDeserialize				https://www.geeksforgeeks.org/serialize-deserialize-binary-tree/
	7.67. HeightInLeafConnectedBT				https://www.geeksforgeeks.org/find-height-of-a-special-binary-tree-whose-leaf-nodes-are-connected/
	7.68. ExpressionTree					https://www.geeksforgeeks.org/expression-tree/
	7.69. WidthOfABinaryTree				https://www.geeksforgeeks.org/width-binary-tree-set-1/
	7.70. CountSingleValuedTrees				https://www.geeksforgeeks.org/find-count-of-singly-subtrees/ https://leetcode.com/articles/count-univalue-subtrees/# 
https://www.geeksforgeeks.org/check-weather-given-binary-tree-perfect-not/
https://leetcode.com/problems/binary-tree-cameras/
https://www.geeksforgeeks.org/sum-nodes-k-th-level-tree-represented-string/
https://leetcode.com/problems/binary-tree-maximum-path-sum/
https://leetcode.com/problems/binary-tree-paths/
https://leetcode.com/problems/binary-tree-pruning/
https://leetcode.com/problems/flatten-binary-tree-to-linked-list/
https://leetcode.com/problems/boundary-of-binary-tree/
https://leetcode.com/problems/binary-tree-zigzag-level-order-traversal/
https://leetcode.com/problems/path-sum/
https://www.geeksforgeeks.org/print-nodes-odd-levels-tree/
https://www.geeksforgeeks.org/difference-between-sums-of-odd-and-even-levels/
https://www.geeksforgeeks.org/print-nodes-distance-k-leaf-node/
https://leetcode.com/problems/minimum-distance-between-bst-nodes/
https://leetcode.com/problems/minimum-depth-of-binary-tree/
https://leetcode.com/problems/maximum-width-of-binary-tree/ https://www.geeksforgeeks.org/maximum-width-of-a-binary-tree/
https://www.geeksforgeeks.org/given-linked-list-representation-of-complete-tree-convert-it-to-linked-representation/
https://www.geeksforgeeks.org/longest-consecutive-sequence-binary-tree/ https://www.lintcode.com/en/old/problem/binary-tree-longest-consecutive-sequence/
https://leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/
https://leetcode.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/
https://www.geeksforgeeks.org/print-postorder-from-given-inorder-and-preorder-traversals/
https://leetcode.com/problems/construct-binary-tree-from-preorder-and-postorder-traversal/
https://www.geeksforgeeks.org/inorder-predecessor-successor-given-key-bst/ https://www.geeksforgeeks.org/inorder-predecessor-and-successor-for-a-given-key-in-bst-iterative-approach/
https://www.geeksforgeeks.org/find-postorder-traversal-of-bst-from-preorder-traversal/
https://www.geeksforgeeks.org/check-if-a-given-array-can-represent-preorder-traversal-of-binary-search-tree/
https://www.geeksforgeeks.org/print-bst-keys-in-the-given-range/
https://www.geeksforgeeks.org/print-common-nodes-in-two-binary-search-trees/
https://www.geeksforgeeks.org/leaf-nodes-preorder-binary-search-tree/
https://practice.geeksforgeeks.org/problems/pth-common-ancestor-in-bst/1
https://www.geeksforgeeks.org/count-non-leaf-nodes-binary-tree/
https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/
https://leetcode.com/problems/construct-string-from-binary-tree/
https://kennyzhuang.gitbooks.io/leetcode-lock/content/270_closest_binary_search_tree_value_ii.html https://tenderleo.gitbooks.io/leetcode-solutions-/content/GoogleHard/272.html
https://www.geeksforgeeks.org/width-binary-tree-set-1/ https://www.geeksforgeeks.org/vertical-width-binary-tree-set-2/
https://leetcode.com/problems/unique-binary-search-trees/
https://www.geeksforgeeks.org/check-if-a-given-binary-tree-is-sumtree/
https://leetcode.com/problems/sum-root-to-leaf-numbers/
https://practice.geeksforgeeks.org/problems/image-multiplication/0
https://www.geeksforgeeks.org/check-if-a-given-binary-tree-is-heap/
https://practice.geeksforgeeks.org/problems/leaf-under-budget/1
https://www.geeksforgeeks.org/kth-largest-element-bst-using-constant-extra-space/ https://leetcode.com/problems/kth-smallest-element-in-a-bst/

8. BinarySearchTree and AVL
	8.1. GetAddRemove
	8.2. Find
	8.3. MinMax
	8.4. LCA						https://www.geeksforgeeks.org/lowest-common-ancestor-in-a-binary-search-tree/
	8.5. RepalceBySumOfGV
	8.6. PrintInRange  

9. HashMap
	9.1. HashmapCreation
	9.2. HighestFrequencyChar
	9.3. GetCommonElementDistinct
	9.4. GetCommonElementAll
	9.5. LongestConsecutiveSequence
	9.6. SmallestSubarrayWithAllMaxFreq		https://www.geeksforgeeks.org/smallest-subarray-with-all-occurrences-of-a-most-frequent-element/
	9,7. subDomainFrequency			https://leetcode.com/problems/subdomain-visit-count/
https://www.geeksforgeeks.org/find-elements-present-first-array-not-second/
https://practice.geeksforgeeks.org/problems/distinct-elements-in-a-stream/0
GroupShiftedSequence					https://www.geeksforgeeks.org/group-shifted-string/	

CustomeSortString					https://leetcode.com/problems/custom-sort-string/ https://www.geeksforgeeks.org/sort-string-according-order-defined-another-string/

10. Heap
	10.1. Heap(implementation)
	10.2. KSmallestLargestElements		done			https://www.geeksforgeeks.org/k-largestor-smallest-elements-in-an-array/
	10.3. SortKsortedArray      	done		
	10.4. MergeKsortedLinkedLists			done	https://www.geeksforgeeks.org/merge-k-sorted-linked-lists/ https://leetcode.com/problems/merge-k-sorted-lists/   
	10.5. Huffman Encoding
	10.6. MedianPriorityQueue
	10.7. Sort2Arrays
	10.8. HeapSort	
	10.9. MergeKSortedArrays	done	
	10.10. KSmallestOriginalOrder(+efficient)	done	https://www.geeksforgeeks.org/find-n-smallest-element-given-array-order-array/ https://www.geeksforgeeks.org/k-smallest-elements-order-using-o1-extra-space/ 
	
11. Trie
	11.1. Trie creation

12. Graphs
	12.1. Implementation
	12.2. HasPath
	12.3. PrintAllPaths
	12.4. ShortestPath
	12.5. LongestPath
	12.6. Ceil
	12.7. Floor
	12.8. BFSandDFS
	12.9. LevelOrder
	12.10. GetConnectedComponents
	12.11. IsConnected
	12.12. IsAcyclic
	12.13. IsBipartite
	12.14. CountIslands
	12.15. Djikstra
	12.16. Prims
	12.17. KnightsTour
	12.18. Astronauts
	12.19. Diameter
	12.20. HamiltonianCnP
https://www.geeksforgeeks.org/shortest-path-reach-one-prime-changing-single-digit-time/
https://www.geeksforgeeks.org/count-number-trees-forest/
https://www.geeksforgeeks.org/water-jug-problem-using-bfs/ 

13. Math

14. Strings
	14.1. SmallestWindowWithAllCharsOfiteself			https://www.geeksforgeeks.org/smallest-window-contains-characters-string/
	14.2. SmallestWindowWithAllCharsOfanother			https://www.geeksforgeeks.org/find-the-smallest-window-in-a-string-containing-all-characters-of-another-string/ https://leetcode.com/problems/minimum-window-substring/
	14.3. PrintWordsSameCharacterSet				https://www.geeksforgeeks.org/print-words-together-set-characters/
	14.4. SmallestWindowWithAllDistinctCharsOfanother
	14.5. RearrangeNoCommonAdjacent					https://www.geeksforgeeks.org/rearrange-characters-string-no-two-adjacent/?ref=rp	
	14.6. LongPressedName						https://leetcode.com/problems/long-pressed-name/
	14.7. RansomNote						https://leetcode.com/problems/ransom-note/
	14.8. RemoveComments						https://leetcode.com/problems/remove-comments/
	14.9. CountBinarySubstring					https://leetcode.com/problems/count-binary-substrings/
	14.10. CountTernarySubstring					https://www.geeksforgeeks.org/substring-equal-number-0-1-2/
	14.11. PermutationInString 			Done		https://leetcode.com/problems/permutation-in-string/
https://leetcode.com/problems/k-closest-points-to-origin/ 
https://leetcode.com/problems/binary-subarrays-with-sum/ 
https://leetcode.com/problems/jewels-and-stones/
https://leetcode.com/problems/keyboard-row/
https://leetcode.com/problems/isomorphic-strings/
https://www.geeksforgeeks.org/check-string-isogram-not/
https://leetcode.com/problems/island-perimeter/
https://www.geeksforgeeks.org/maximum-number-characters-two-character-string/
https://leetcode.com/problems/longest-substring-without-repeating-characters/
https://leetcode.com/problems/subarrays-with-k-different-integers/
https://www.geeksforgeeks.org/count-of-all-unique-substrings-with-non-repeating-characters/
https://www.geeksforgeeks.org/count-number-of-substrings-with-exactly-k-distinct-characters/
https://www.geeksforgeeks.org/find-the-longest-substring-with-k-unique-characters-in-a-given-string/
https://leetcode.com/problems/longest-palindrome/
https://www.geeksforgeeks.org/find-the-longest-substring-with-k-unique-characters-in-a-given-string/ https://www.geeksforgeeks.org/longest-substring-with-k-unique-characters-using-binary-search/
https://leetcode.com/problems/longest-consecutive-sequence/
https://www.geeksforgeeks.org/count-subarrays-total-distinct-elements-original-array/
https://www.geeksforgeeks.org/count-substrings-binary-string-containing-k-ones/
https://leetcode.com/problems/word-pattern/
https://leetcode.com/problems/reveal-cards-in-increasing-order/
https://leetcode.com/problems/shifting-letters/
https://leetcode.com/problems/integer-to-english-words/
https://leetcode.com/problems/long-pressed-name/
https://www.lintcode.com/problem/next-closest-time/description
https://www.lintcode.com/problem/add-bold-tag-in-string/description
https://www.lintcode.com/problem/similar-rgb-color/
RomanToInteger						https://leetcode.com/problems/roman-to-integer/
IntegerToRoman						https://leetcode.com/problems/integer-to-roman/
RearrangeNoConsecutive					https://www.geeksforgeeks.org/rearrange-the-characters-of-the-string-such-that-no-two-adjacent-characters-are-consecutive-english-alphabets/?ref=rp
							https://www.geeksforgeeks.org/python-get-the-smallest-window-in-a-string-containing-all-characters-of-given-pattern/?ref=rp
ContainsBinaryPermutations				https://www.geeksforgeeks.org/check-if-a-binary-string-contains-all-permutations-of-length-k/	https://leetcode.com/problems/check-if-a-string-contains-all-binary-codes-of-size-k/
ContainsBinaryTillN					https://leetcode.com/problems/binary-string-with-substrings-representing-1-to-n/
ClosestPalindrome					https://leetcode.com/problems/find-the-closest-palindrome/
group anagram https://leetcode.com/problems/group-anagrams/ https://www.geeksforgeeks.org/given-a-sequence-of-words-print-all-anagrams-together/

15. Searching and Sorting
	15.1. MajorityElement 					https://www.geeksforgeeks.org/majority-element/
	15.2. SearchingKDistantArray				https://www.geeksforgeeks.org/searching-array-adjacent-differ-k/
	15.3. FindMissingRepeating				https://www.geeksforgeeks.org/find-a-repeating-and-a-missing-number/
	15.4. FindCeilingInSortedArray				https://www.geeksforgeeks.org/ceiling-in-a-sorted-array/
	15.5. 3WayQuickSort					https://www.geeksforgeeks.org/3-way-quicksort-dutch-national-flag/
	15.6. CountSort						https://www.geeksforgeeks.org/counting-sort/
	15.7. RadixSort						https://www.geeksforgeeks.org/radix-sort/
	15.8. SortDateEfficient					https://www.geeksforgeeks.org/how-to-efficiently-sort-a-big-list-dates-in-20s/
	15.9. MiniCostForEqualArray				https://www.geeksforgeeks.org/make-array-elements-equal-minimum-cost/
	15.10. SortByBitCount					https://www.geeksforgeeks.org/sort-array-according-count-set-bits/
	15.11. SortElementsByFrequency				https://www.geeksforgeeks.org/sort-elements-by-frequency/	https://leetcode.com/problems/sort-characters-by-frequency/
	15.12. GreatestProductPair				https://www.geeksforgeeks.org/find-pair-with-greatest-product-in-array/
	15.13. MinSwapsToSort					https://www.geeksforgeeks.org/minimum-number-swaps-required-sort-array/ https://www.geeksforgeeks.org/minimum-number-of-swaps-required-to-sort-an-array-set-2/ https://www.geeksforgeeks.org/minimum-number-of-swaps-required-to-sort-an-array-of-first-n-number/
	15.14. PermuteTwoArraysPairSumGTK			https://www.geeksforgeeks.org/permute-two-arrays-sum-every-pair-greater-equal-k/
	15.15. MinSwapsIdenticalArray				https://www.geeksforgeeks.org/minimum-swaps-to-make-two-array-identical/
	15.16. PancakeSorting					https://leetcode.com/problems/pancake-sorting/
	15.17. SortAfterSquaring				https://www.geeksforgeeks.org/sort-array-converting-elements-squares/
	15.18. ShortestUnsortedSubArray				https://leetcode.com/problems/shortest-unsorted-continuous-subarray/ https://www.geeksforgeeks.org/minimum-length-unsorted-subarray-sorting-which-makes-the-complete-array-sorted/

16. Bit Manipulation
	16.1. CountSetBits					https://www.geeksforgeeks.org/count-set-bits-in-an-integer/	
	16.2. NumberWithOddOccurance				https://www.geeksforgeeks.org/find-the-number-occurring-odd-number-of-times/
	16.3. CheckBleak					https://www.geeksforgeeks.org/check-if-a-number-is-bleak/
	16.4. CopySetBits					https://www.geeksforgeeks.org/copy-set-bits-in-a-range/
	16.5. IsMultipleOf3					https://www.geeksforgeeks.org/write-an-efficient-method-to-check-if-a-number-is-multiple-of-3/
	16.6. PositionOfOnlySetBit				https://www.geeksforgeeks.org/find-position-of-the-only-set-bit/
	16.7. BinaryRepresentation				https://www.geeksforgeeks.org/binary-representation-of-a-given-number/
	16.8. ReverseBitsOfANumberC				https://www.geeksforgeeks.org/write-an-efficient-c-program-to-reverse-bits-of-a-number/
	16.9. CountBitsToBeFlippedForAToB			https://www.geeksforgeeks.org/count-number-of-bits-to-be-flipped-to-convert-a-to-b/
	16.10. FindTwoNonRepeating				https://www.geeksforgeeks.org/find-two-non-repeating-elements-in-an-array-of-repeating-elements/
	16.11. CheckReverseSubarraySort				https://www.geeksforgeeks.org/sort-an-array-where-a-subarray-of-a-sorted-array-is-in-reverse-order/ https://www.geeksforgeeks.org/sort-an-array-where-a-subarray-of-a-sorted-array-is-in-reverse-order/
	16.12. InsertInSortedNonOcerlapingInterval		https://www.geeksforgeeks.org/insert-in-sorted-and-non-overlapping-interval-array/
	16.13. ProductArrayPuzzle				https://www.geeksforgeeks.org/a-product-array-puzzle/	 https://leetcode.com/problems/product-of-array-except-self/		
	16.14. FindDuplicatesEfficient				https://www.geeksforgeeks.org/find-duplicates-in-on-time-and-constant-extra-space/
	16.15. IsSudokuValid				done	https://leetcode.com/problems/valid-sudoku/
	16.16. UncommonCharacters				https://www.geeksforgeeks.org/find-uncommon-characters-of-the-two-strings-set-2/	
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
https://leetcode.com/problems/happy-number/
https://www.geeksforgeeks.org/height-complete-binary-tree-heap-n-nodes/
https://leetcode.com/problems/magic-squares-in-grid/
https://leetcode.com/problems/max-chunks-to-make-sorted-ii/
https://cheonhyangzhang.gitbooks.io/leetcode-solutions/content/solutions-451-500/487-max-consecutive-ones-ii.html

About


Languages

Language:Java 99.8%Language:C++ 0.2%