From 3b21637af6f9be6d1d32dcef94c8a3c04d74cefa Mon Sep 17 00:00:00 2001 From: Benyam Ephrem Date: Sun, 15 Sep 2019 22:47:50 -0400 Subject: [PATCH] Restructure --- .../AdditionWithOnlyBitshifting.java} | 0 .../IncrementAnArrayInteger.java} | 0 .../InterconvertStringAndInt.java} | 0 .../NextPermutation.java} | 0 .../SecondLargestItemInAnArray.java} | 0 .../ChangeMakingProblem.java} | 0 .../ChangeMakingProblem2.java} | 0 .../{climbingStairs.java => ClimbingStairs/ClimbingStairs.java} | 0 .../CountUniqueBinarySearchTrees.java} | 0 .../{decodeWays.java => DecodeWays/DecodeWays.java} | 0 .../{editDistance.java => EditDistance/EditDistance.java} | 0 .../{eggDrop.java => EggDrop/EggDrop.java} | 0 .../GenerateBinaryTrees.java} | 0 .../GenerateNMatchedParenStrings.java} | 0 .../IpAddressRestoration.java} | 0 .../LongestCommonSubsequence.java} | 0 .../LongestIncreasingSubsequence.java} | 0 .../MaxContiguousSubarraySum.java} | 0 .../MaxSumIn2DMatrix.java} | 0 .../MinimumWeightPathInTriangle.java} | 0 .../{nQueens.java => NQueens/NQueens.java} | 0 .../PalindromePartitioning.java} | 0 .../PartitionIntoKEqualSumSubsets.java} | 0 .../{permutations.java => Permutations/Permutations.java} | 0 .../PhoneNumberCombinations.java} | 0 .../{powerset.java => Powerset/Powerset.java} | 0 .../{rangeSumQuery.java => RangeSumQuery/RangeSumQuery.java} | 0 .../{subsetsOfSizeK.java => SubsetsOfSizeK/SubsetsOfSizeK.java} | 0 .../{sudokuSolver.java => SudokuSolver/SudokuSolver.java} | 0 Graphs/{cloneAGraph.java => CloneAGraph/CloneAGraph.java} | 0 .../DetectGraphCycle.java} | 0 Graphs/{floodFill.java => FloodFill/FloodFill.java} | 0 Graphs/{keysAndRooms.java => KeysAndRooms/KeysAndRooms.java} | 0 Graphs/{searchAMaze.java => SearchAMaze/SearchAMaze.java} | 0 .../SurroundedRegions.java} | 0 Graphs/{wordLadder.java => WordLadder/WordLadder.java} | 0 Greedy Algorithms/{ => 3sum}/3sum.java | 0 .../MinimumWindowSubstring.java} | 0 .../CloneLinkedListWithRandomPointers.java} | 0 Linked Lists/{ => LRUCache}/LRUCache.java | 0 .../LinkedListFundamentals.java} | 0 .../MergeTwoSortedLists.java} | 0 .../SearchALinkedListWithJumps.java} | 0 .../{countingSort.java => CountingSort/CountingSort.java} | 0 .../FirstAndLastPositionOfKInSortedArray.java} | 0 .../ImplementABinaryHeap.java} | 0 .../{insertionSort.java => InsertionSort/InsertionSort.java} | 0 .../KthLargestElement.java} | 0 .../MergeKSortedArrays.java} | 0 .../MergeKSortedLinkedLists.java} | 0 .../{mergeSort.java => MergeSort/MergeSort.java} | 0 .../OptimizedBubbleSort.java} | 0 .../{quicksort.java => Quicksort/Quicksort.java} | 0 .../{rawBubbleSort.java => RawBubbleSort/RawBubbleSort.java} | 0 .../SearchA2DMatrix.java} | 0 .../{selectionSort.java => SelectionSort/SelectionSort.java} | 0 .../SortAnAlmostSortedArray.java} | 0 .../EvaluateReversePolishNotation.java} | 0 Stacks & Queues/{maxStack.java => MaxStack/MaxStack.java} | 0 .../QueueWith2Stacks.java} | 0 .../AllNodesDistanceKFromStart.java} | 0 .../FundamentalTraversals.java} | 0 .../HeightBalancedBinaryTree.java} | 0 .../LevelOrderTraversal.java} | 0 .../LowestCommonAncestorBinaryTree.java} | 0 .../{minHeightBst.java => MinHeightBst/MinHeightBst.java} | 0 .../{pathSum.java => PathSum/PathSum.java} | 0 .../SerializeDeserializeBinaryTree.java} | 0 68 files changed, 0 insertions(+), 0 deletions(-) rename Arrays, Primitives, Strings/{additionWithOnlyBitshifting.java => AdditionWithOnlyBitshifting/AdditionWithOnlyBitshifting.java} (100%) rename Arrays, Primitives, Strings/{incrementAnArrayInteger.java => IncrementAnArrayInteger/IncrementAnArrayInteger.java} (100%) rename Arrays, Primitives, Strings/{interconvertStringAndInt.java => InterconvertStringAndInt/InterconvertStringAndInt.java} (100%) rename Arrays, Primitives, Strings/{nextPermutation.java => NextPermutation/NextPermutation.java} (100%) rename Arrays, Primitives, Strings/{secondLargestItemInAnArray.java => SecondLargestItemInAnArray/SecondLargestItemInAnArray.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{changeMakingProblem.java => ChangeMakingProblem/ChangeMakingProblem.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{changeMakingProblem2.java => ChangeMakingProblem2/ChangeMakingProblem2.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{climbingStairs.java => ClimbingStairs/ClimbingStairs.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{countUniqueBinarySearchTrees.java => CountUniqueBinarySearchTrees/CountUniqueBinarySearchTrees.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{decodeWays.java => DecodeWays/DecodeWays.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{editDistance.java => EditDistance/EditDistance.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{eggDrop.java => EggDrop/EggDrop.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{generateBinaryTrees.java => GenerateBinaryTrees/GenerateBinaryTrees.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{generateNMatchedParenStrings.java => GenerateNMatchedParenStrings/GenerateNMatchedParenStrings.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{ipAddressRestoration.java => IpAddressRestoration/IpAddressRestoration.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{longestCommonSubsequence.java => LongestCommonSubsequence/LongestCommonSubsequence.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{longestIncreasingSubsequence.java => LongestIncreasingSubsequence/LongestIncreasingSubsequence.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{maxContiguousSubarraySum.java => MaxContiguousSubarraySum/MaxContiguousSubarraySum.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{maxSumIn2DMatrix.java => MaxSumIn2DMatrix/MaxSumIn2DMatrix.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{minimumWeightPathInTriangle.java => MinimumWeightPathInTriangle/MinimumWeightPathInTriangle.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{nQueens.java => NQueens/NQueens.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{palindromePartitioning.java => PalindromePartitioning/PalindromePartitioning.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{partitionIntoKEqualSumSubsets.java => PartitionIntoKEqualSumSubsets/PartitionIntoKEqualSumSubsets.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{permutations.java => Permutations/Permutations.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{phoneNumberCombinations.java => PhoneNumberCombinations/PhoneNumberCombinations.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{powerset.java => Powerset/Powerset.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{rangeSumQuery.java => RangeSumQuery/RangeSumQuery.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{subsetsOfSizeK.java => SubsetsOfSizeK/SubsetsOfSizeK.java} (100%) rename Dynamic Programming, Recursion, & Backtracking/{sudokuSolver.java => SudokuSolver/SudokuSolver.java} (100%) rename Graphs/{cloneAGraph.java => CloneAGraph/CloneAGraph.java} (100%) rename Graphs/{detectGraphCycle.java => DetectGraphCycle/DetectGraphCycle.java} (100%) rename Graphs/{floodFill.java => FloodFill/FloodFill.java} (100%) rename Graphs/{keysAndRooms.java => KeysAndRooms/KeysAndRooms.java} (100%) rename Graphs/{searchAMaze.java => SearchAMaze/SearchAMaze.java} (100%) rename Graphs/{surroundedRegions.java => SurroundedRegions/SurroundedRegions.java} (100%) rename Graphs/{wordLadder.java => WordLadder/WordLadder.java} (100%) rename Greedy Algorithms/{ => 3sum}/3sum.java (100%) rename Hashtables/{minimumWindowSubstring.java => MinimumWindowSubstring/MinimumWindowSubstring.java} (100%) rename Linked Lists/{cloneLinkedListWithRandomPointers.java => CloneLinkedListWithRandomPointers/CloneLinkedListWithRandomPointers.java} (100%) rename Linked Lists/{ => LRUCache}/LRUCache.java (100%) rename Linked Lists/{linkedListFundamentals.java => LinkedListFundamentals/LinkedListFundamentals.java} (100%) rename Linked Lists/{mergeTwoSortedLists.java => MergeTwoSortedLists/MergeTwoSortedLists.java} (100%) rename Linked Lists/{searchALinkedListWithJumps.java => SearchALinkedListWithJumps/SearchALinkedListWithJumps.java} (100%) rename Sorting, Searching, & Heaps/{countingSort.java => CountingSort/CountingSort.java} (100%) rename Sorting, Searching, & Heaps/{firstAndLastPositionOfKInSortedArray.java => FirstAndLastPositionOfKInSortedArray/FirstAndLastPositionOfKInSortedArray.java} (100%) rename Sorting, Searching, & Heaps/{implementABinaryHeap.java => ImplementABinaryHeap/ImplementABinaryHeap.java} (100%) rename Sorting, Searching, & Heaps/{insertionSort.java => InsertionSort/InsertionSort.java} (100%) rename Sorting, Searching, & Heaps/{kthLargestElement.java => KthLargestElement/KthLargestElement.java} (100%) rename Sorting, Searching, & Heaps/{mergeKSortedArrays.java => MergeKSortedArrays/MergeKSortedArrays.java} (100%) rename Sorting, Searching, & Heaps/{mergeKSortedLinkedLists.java => MergeKSortedLinkedLists/MergeKSortedLinkedLists.java} (100%) rename Sorting, Searching, & Heaps/{mergeSort.java => MergeSort/MergeSort.java} (100%) rename Sorting, Searching, & Heaps/{optimizedBubbleSort.java => OptimizedBubbleSort/OptimizedBubbleSort.java} (100%) rename Sorting, Searching, & Heaps/{quicksort.java => Quicksort/Quicksort.java} (100%) rename Sorting, Searching, & Heaps/{rawBubbleSort.java => RawBubbleSort/RawBubbleSort.java} (100%) rename Sorting, Searching, & Heaps/{searchA2DMatrix.java => SearchA2DMatrix/SearchA2DMatrix.java} (100%) rename Sorting, Searching, & Heaps/{selectionSort.java => SelectionSort/SelectionSort.java} (100%) rename Sorting, Searching, & Heaps/{sortAnAlmostSortedArray.java => SortAnAlmostSortedArray/SortAnAlmostSortedArray.java} (100%) rename Stacks & Queues/{evaluateReversePolishNotation.java => EvaluateReversePolishNotation/EvaluateReversePolishNotation.java} (100%) rename Stacks & Queues/{maxStack.java => MaxStack/MaxStack.java} (100%) rename Stacks & Queues/{queueWith2Stacks.java => QueueWith2Stacks/QueueWith2Stacks.java} (100%) rename Trees, Binary Trees, & Binary Search Trees/{allNodesDistanceKFromStart.java => AllNodesDistanceKFromStart/AllNodesDistanceKFromStart.java} (100%) rename Trees, Binary Trees, & Binary Search Trees/{fundamentalTraversals.java => FundamentalTraversals/FundamentalTraversals.java} (100%) rename Trees, Binary Trees, & Binary Search Trees/{heightBalancedBinaryTree.java => HeightBalancedBinaryTree/HeightBalancedBinaryTree.java} (100%) rename Trees, Binary Trees, & Binary Search Trees/{levelOrderTraversal.java => LevelOrderTraversal/LevelOrderTraversal.java} (100%) rename Trees, Binary Trees, & Binary Search Trees/{lowestCommonAncestorBinaryTree.java => LowestCommonAncestorBinaryTree/LowestCommonAncestorBinaryTree.java} (100%) rename Trees, Binary Trees, & Binary Search Trees/{minHeightBst.java => MinHeightBst/MinHeightBst.java} (100%) rename Trees, Binary Trees, & Binary Search Trees/{pathSum.java => PathSum/PathSum.java} (100%) rename Trees, Binary Trees, & Binary Search Trees/{serializeDeserializeBinaryTree.java => SerializeDeserializeBinaryTree/SerializeDeserializeBinaryTree.java} (100%) diff --git a/Arrays, Primitives, Strings/additionWithOnlyBitshifting.java b/Arrays, Primitives, Strings/AdditionWithOnlyBitshifting/AdditionWithOnlyBitshifting.java similarity index 100% rename from Arrays, Primitives, Strings/additionWithOnlyBitshifting.java rename to Arrays, Primitives, Strings/AdditionWithOnlyBitshifting/AdditionWithOnlyBitshifting.java diff --git a/Arrays, Primitives, Strings/incrementAnArrayInteger.java b/Arrays, Primitives, Strings/IncrementAnArrayInteger/IncrementAnArrayInteger.java similarity index 100% rename from Arrays, Primitives, Strings/incrementAnArrayInteger.java rename to Arrays, Primitives, Strings/IncrementAnArrayInteger/IncrementAnArrayInteger.java diff --git a/Arrays, Primitives, Strings/interconvertStringAndInt.java b/Arrays, Primitives, Strings/InterconvertStringAndInt/InterconvertStringAndInt.java similarity index 100% rename from Arrays, Primitives, Strings/interconvertStringAndInt.java rename to Arrays, Primitives, Strings/InterconvertStringAndInt/InterconvertStringAndInt.java diff --git a/Arrays, Primitives, Strings/nextPermutation.java b/Arrays, Primitives, Strings/NextPermutation/NextPermutation.java similarity index 100% rename from Arrays, Primitives, Strings/nextPermutation.java rename to Arrays, Primitives, Strings/NextPermutation/NextPermutation.java diff --git a/Arrays, Primitives, Strings/secondLargestItemInAnArray.java b/Arrays, Primitives, Strings/SecondLargestItemInAnArray/SecondLargestItemInAnArray.java similarity index 100% rename from Arrays, Primitives, Strings/secondLargestItemInAnArray.java rename to Arrays, Primitives, Strings/SecondLargestItemInAnArray/SecondLargestItemInAnArray.java diff --git a/Dynamic Programming, Recursion, & Backtracking/changeMakingProblem.java b/Dynamic Programming, Recursion, & Backtracking/ChangeMakingProblem/ChangeMakingProblem.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/changeMakingProblem.java rename to Dynamic Programming, Recursion, & Backtracking/ChangeMakingProblem/ChangeMakingProblem.java diff --git a/Dynamic Programming, Recursion, & Backtracking/changeMakingProblem2.java b/Dynamic Programming, Recursion, & Backtracking/ChangeMakingProblem2/ChangeMakingProblem2.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/changeMakingProblem2.java rename to Dynamic Programming, Recursion, & Backtracking/ChangeMakingProblem2/ChangeMakingProblem2.java diff --git a/Dynamic Programming, Recursion, & Backtracking/climbingStairs.java b/Dynamic Programming, Recursion, & Backtracking/ClimbingStairs/ClimbingStairs.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/climbingStairs.java rename to Dynamic Programming, Recursion, & Backtracking/ClimbingStairs/ClimbingStairs.java diff --git a/Dynamic Programming, Recursion, & Backtracking/countUniqueBinarySearchTrees.java b/Dynamic Programming, Recursion, & Backtracking/CountUniqueBinarySearchTrees/CountUniqueBinarySearchTrees.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/countUniqueBinarySearchTrees.java rename to Dynamic Programming, Recursion, & Backtracking/CountUniqueBinarySearchTrees/CountUniqueBinarySearchTrees.java diff --git a/Dynamic Programming, Recursion, & Backtracking/decodeWays.java b/Dynamic Programming, Recursion, & Backtracking/DecodeWays/DecodeWays.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/decodeWays.java rename to Dynamic Programming, Recursion, & Backtracking/DecodeWays/DecodeWays.java diff --git a/Dynamic Programming, Recursion, & Backtracking/editDistance.java b/Dynamic Programming, Recursion, & Backtracking/EditDistance/EditDistance.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/editDistance.java rename to Dynamic Programming, Recursion, & Backtracking/EditDistance/EditDistance.java diff --git a/Dynamic Programming, Recursion, & Backtracking/eggDrop.java b/Dynamic Programming, Recursion, & Backtracking/EggDrop/EggDrop.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/eggDrop.java rename to Dynamic Programming, Recursion, & Backtracking/EggDrop/EggDrop.java diff --git a/Dynamic Programming, Recursion, & Backtracking/generateBinaryTrees.java b/Dynamic Programming, Recursion, & Backtracking/GenerateBinaryTrees/GenerateBinaryTrees.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/generateBinaryTrees.java rename to Dynamic Programming, Recursion, & Backtracking/GenerateBinaryTrees/GenerateBinaryTrees.java diff --git a/Dynamic Programming, Recursion, & Backtracking/generateNMatchedParenStrings.java b/Dynamic Programming, Recursion, & Backtracking/GenerateNMatchedParenStrings/GenerateNMatchedParenStrings.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/generateNMatchedParenStrings.java rename to Dynamic Programming, Recursion, & Backtracking/GenerateNMatchedParenStrings/GenerateNMatchedParenStrings.java diff --git a/Dynamic Programming, Recursion, & Backtracking/ipAddressRestoration.java b/Dynamic Programming, Recursion, & Backtracking/IpAddressRestoration/IpAddressRestoration.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/ipAddressRestoration.java rename to Dynamic Programming, Recursion, & Backtracking/IpAddressRestoration/IpAddressRestoration.java diff --git a/Dynamic Programming, Recursion, & Backtracking/longestCommonSubsequence.java b/Dynamic Programming, Recursion, & Backtracking/LongestCommonSubsequence/LongestCommonSubsequence.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/longestCommonSubsequence.java rename to Dynamic Programming, Recursion, & Backtracking/LongestCommonSubsequence/LongestCommonSubsequence.java diff --git a/Dynamic Programming, Recursion, & Backtracking/longestIncreasingSubsequence.java b/Dynamic Programming, Recursion, & Backtracking/LongestIncreasingSubsequence/LongestIncreasingSubsequence.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/longestIncreasingSubsequence.java rename to Dynamic Programming, Recursion, & Backtracking/LongestIncreasingSubsequence/LongestIncreasingSubsequence.java diff --git a/Dynamic Programming, Recursion, & Backtracking/maxContiguousSubarraySum.java b/Dynamic Programming, Recursion, & Backtracking/MaxContiguousSubarraySum/MaxContiguousSubarraySum.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/maxContiguousSubarraySum.java rename to Dynamic Programming, Recursion, & Backtracking/MaxContiguousSubarraySum/MaxContiguousSubarraySum.java diff --git a/Dynamic Programming, Recursion, & Backtracking/maxSumIn2DMatrix.java b/Dynamic Programming, Recursion, & Backtracking/MaxSumIn2DMatrix/MaxSumIn2DMatrix.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/maxSumIn2DMatrix.java rename to Dynamic Programming, Recursion, & Backtracking/MaxSumIn2DMatrix/MaxSumIn2DMatrix.java diff --git a/Dynamic Programming, Recursion, & Backtracking/minimumWeightPathInTriangle.java b/Dynamic Programming, Recursion, & Backtracking/MinimumWeightPathInTriangle/MinimumWeightPathInTriangle.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/minimumWeightPathInTriangle.java rename to Dynamic Programming, Recursion, & Backtracking/MinimumWeightPathInTriangle/MinimumWeightPathInTriangle.java diff --git a/Dynamic Programming, Recursion, & Backtracking/nQueens.java b/Dynamic Programming, Recursion, & Backtracking/NQueens/NQueens.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/nQueens.java rename to Dynamic Programming, Recursion, & Backtracking/NQueens/NQueens.java diff --git a/Dynamic Programming, Recursion, & Backtracking/palindromePartitioning.java b/Dynamic Programming, Recursion, & Backtracking/PalindromePartitioning/PalindromePartitioning.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/palindromePartitioning.java rename to Dynamic Programming, Recursion, & Backtracking/PalindromePartitioning/PalindromePartitioning.java diff --git a/Dynamic Programming, Recursion, & Backtracking/partitionIntoKEqualSumSubsets.java b/Dynamic Programming, Recursion, & Backtracking/PartitionIntoKEqualSumSubsets/PartitionIntoKEqualSumSubsets.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/partitionIntoKEqualSumSubsets.java rename to Dynamic Programming, Recursion, & Backtracking/PartitionIntoKEqualSumSubsets/PartitionIntoKEqualSumSubsets.java diff --git a/Dynamic Programming, Recursion, & Backtracking/permutations.java b/Dynamic Programming, Recursion, & Backtracking/Permutations/Permutations.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/permutations.java rename to Dynamic Programming, Recursion, & Backtracking/Permutations/Permutations.java diff --git a/Dynamic Programming, Recursion, & Backtracking/phoneNumberCombinations.java b/Dynamic Programming, Recursion, & Backtracking/PhoneNumberCombinations/PhoneNumberCombinations.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/phoneNumberCombinations.java rename to Dynamic Programming, Recursion, & Backtracking/PhoneNumberCombinations/PhoneNumberCombinations.java diff --git a/Dynamic Programming, Recursion, & Backtracking/powerset.java b/Dynamic Programming, Recursion, & Backtracking/Powerset/Powerset.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/powerset.java rename to Dynamic Programming, Recursion, & Backtracking/Powerset/Powerset.java diff --git a/Dynamic Programming, Recursion, & Backtracking/rangeSumQuery.java b/Dynamic Programming, Recursion, & Backtracking/RangeSumQuery/RangeSumQuery.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/rangeSumQuery.java rename to Dynamic Programming, Recursion, & Backtracking/RangeSumQuery/RangeSumQuery.java diff --git a/Dynamic Programming, Recursion, & Backtracking/subsetsOfSizeK.java b/Dynamic Programming, Recursion, & Backtracking/SubsetsOfSizeK/SubsetsOfSizeK.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/subsetsOfSizeK.java rename to Dynamic Programming, Recursion, & Backtracking/SubsetsOfSizeK/SubsetsOfSizeK.java diff --git a/Dynamic Programming, Recursion, & Backtracking/sudokuSolver.java b/Dynamic Programming, Recursion, & Backtracking/SudokuSolver/SudokuSolver.java similarity index 100% rename from Dynamic Programming, Recursion, & Backtracking/sudokuSolver.java rename to Dynamic Programming, Recursion, & Backtracking/SudokuSolver/SudokuSolver.java diff --git a/Graphs/cloneAGraph.java b/Graphs/CloneAGraph/CloneAGraph.java similarity index 100% rename from Graphs/cloneAGraph.java rename to Graphs/CloneAGraph/CloneAGraph.java diff --git a/Graphs/detectGraphCycle.java b/Graphs/DetectGraphCycle/DetectGraphCycle.java similarity index 100% rename from Graphs/detectGraphCycle.java rename to Graphs/DetectGraphCycle/DetectGraphCycle.java diff --git a/Graphs/floodFill.java b/Graphs/FloodFill/FloodFill.java similarity index 100% rename from Graphs/floodFill.java rename to Graphs/FloodFill/FloodFill.java diff --git a/Graphs/keysAndRooms.java b/Graphs/KeysAndRooms/KeysAndRooms.java similarity index 100% rename from Graphs/keysAndRooms.java rename to Graphs/KeysAndRooms/KeysAndRooms.java diff --git a/Graphs/searchAMaze.java b/Graphs/SearchAMaze/SearchAMaze.java similarity index 100% rename from Graphs/searchAMaze.java rename to Graphs/SearchAMaze/SearchAMaze.java diff --git a/Graphs/surroundedRegions.java b/Graphs/SurroundedRegions/SurroundedRegions.java similarity index 100% rename from Graphs/surroundedRegions.java rename to Graphs/SurroundedRegions/SurroundedRegions.java diff --git a/Graphs/wordLadder.java b/Graphs/WordLadder/WordLadder.java similarity index 100% rename from Graphs/wordLadder.java rename to Graphs/WordLadder/WordLadder.java diff --git a/Greedy Algorithms/3sum.java b/Greedy Algorithms/3sum/3sum.java similarity index 100% rename from Greedy Algorithms/3sum.java rename to Greedy Algorithms/3sum/3sum.java diff --git a/Hashtables/minimumWindowSubstring.java b/Hashtables/MinimumWindowSubstring/MinimumWindowSubstring.java similarity index 100% rename from Hashtables/minimumWindowSubstring.java rename to Hashtables/MinimumWindowSubstring/MinimumWindowSubstring.java diff --git a/Linked Lists/cloneLinkedListWithRandomPointers.java b/Linked Lists/CloneLinkedListWithRandomPointers/CloneLinkedListWithRandomPointers.java similarity index 100% rename from Linked Lists/cloneLinkedListWithRandomPointers.java rename to Linked Lists/CloneLinkedListWithRandomPointers/CloneLinkedListWithRandomPointers.java diff --git a/Linked Lists/LRUCache.java b/Linked Lists/LRUCache/LRUCache.java similarity index 100% rename from Linked Lists/LRUCache.java rename to Linked Lists/LRUCache/LRUCache.java diff --git a/Linked Lists/linkedListFundamentals.java b/Linked Lists/LinkedListFundamentals/LinkedListFundamentals.java similarity index 100% rename from Linked Lists/linkedListFundamentals.java rename to Linked Lists/LinkedListFundamentals/LinkedListFundamentals.java diff --git a/Linked Lists/mergeTwoSortedLists.java b/Linked Lists/MergeTwoSortedLists/MergeTwoSortedLists.java similarity index 100% rename from Linked Lists/mergeTwoSortedLists.java rename to Linked Lists/MergeTwoSortedLists/MergeTwoSortedLists.java diff --git a/Linked Lists/searchALinkedListWithJumps.java b/Linked Lists/SearchALinkedListWithJumps/SearchALinkedListWithJumps.java similarity index 100% rename from Linked Lists/searchALinkedListWithJumps.java rename to Linked Lists/SearchALinkedListWithJumps/SearchALinkedListWithJumps.java diff --git a/Sorting, Searching, & Heaps/countingSort.java b/Sorting, Searching, & Heaps/CountingSort/CountingSort.java similarity index 100% rename from Sorting, Searching, & Heaps/countingSort.java rename to Sorting, Searching, & Heaps/CountingSort/CountingSort.java diff --git a/Sorting, Searching, & Heaps/firstAndLastPositionOfKInSortedArray.java b/Sorting, Searching, & Heaps/FirstAndLastPositionOfKInSortedArray/FirstAndLastPositionOfKInSortedArray.java similarity index 100% rename from Sorting, Searching, & Heaps/firstAndLastPositionOfKInSortedArray.java rename to Sorting, Searching, & Heaps/FirstAndLastPositionOfKInSortedArray/FirstAndLastPositionOfKInSortedArray.java diff --git a/Sorting, Searching, & Heaps/implementABinaryHeap.java b/Sorting, Searching, & Heaps/ImplementABinaryHeap/ImplementABinaryHeap.java similarity index 100% rename from Sorting, Searching, & Heaps/implementABinaryHeap.java rename to Sorting, Searching, & Heaps/ImplementABinaryHeap/ImplementABinaryHeap.java diff --git a/Sorting, Searching, & Heaps/insertionSort.java b/Sorting, Searching, & Heaps/InsertionSort/InsertionSort.java similarity index 100% rename from Sorting, Searching, & Heaps/insertionSort.java rename to Sorting, Searching, & Heaps/InsertionSort/InsertionSort.java diff --git a/Sorting, Searching, & Heaps/kthLargestElement.java b/Sorting, Searching, & Heaps/KthLargestElement/KthLargestElement.java similarity index 100% rename from Sorting, Searching, & Heaps/kthLargestElement.java rename to Sorting, Searching, & Heaps/KthLargestElement/KthLargestElement.java diff --git a/Sorting, Searching, & Heaps/mergeKSortedArrays.java b/Sorting, Searching, & Heaps/MergeKSortedArrays/MergeKSortedArrays.java similarity index 100% rename from Sorting, Searching, & Heaps/mergeKSortedArrays.java rename to Sorting, Searching, & Heaps/MergeKSortedArrays/MergeKSortedArrays.java diff --git a/Sorting, Searching, & Heaps/mergeKSortedLinkedLists.java b/Sorting, Searching, & Heaps/MergeKSortedLinkedLists/MergeKSortedLinkedLists.java similarity index 100% rename from Sorting, Searching, & Heaps/mergeKSortedLinkedLists.java rename to Sorting, Searching, & Heaps/MergeKSortedLinkedLists/MergeKSortedLinkedLists.java diff --git a/Sorting, Searching, & Heaps/mergeSort.java b/Sorting, Searching, & Heaps/MergeSort/MergeSort.java similarity index 100% rename from Sorting, Searching, & Heaps/mergeSort.java rename to Sorting, Searching, & Heaps/MergeSort/MergeSort.java diff --git a/Sorting, Searching, & Heaps/optimizedBubbleSort.java b/Sorting, Searching, & Heaps/OptimizedBubbleSort/OptimizedBubbleSort.java similarity index 100% rename from Sorting, Searching, & Heaps/optimizedBubbleSort.java rename to Sorting, Searching, & Heaps/OptimizedBubbleSort/OptimizedBubbleSort.java diff --git a/Sorting, Searching, & Heaps/quicksort.java b/Sorting, Searching, & Heaps/Quicksort/Quicksort.java similarity index 100% rename from Sorting, Searching, & Heaps/quicksort.java rename to Sorting, Searching, & Heaps/Quicksort/Quicksort.java diff --git a/Sorting, Searching, & Heaps/rawBubbleSort.java b/Sorting, Searching, & Heaps/RawBubbleSort/RawBubbleSort.java similarity index 100% rename from Sorting, Searching, & Heaps/rawBubbleSort.java rename to Sorting, Searching, & Heaps/RawBubbleSort/RawBubbleSort.java diff --git a/Sorting, Searching, & Heaps/searchA2DMatrix.java b/Sorting, Searching, & Heaps/SearchA2DMatrix/SearchA2DMatrix.java similarity index 100% rename from Sorting, Searching, & Heaps/searchA2DMatrix.java rename to Sorting, Searching, & Heaps/SearchA2DMatrix/SearchA2DMatrix.java diff --git a/Sorting, Searching, & Heaps/selectionSort.java b/Sorting, Searching, & Heaps/SelectionSort/SelectionSort.java similarity index 100% rename from Sorting, Searching, & Heaps/selectionSort.java rename to Sorting, Searching, & Heaps/SelectionSort/SelectionSort.java diff --git a/Sorting, Searching, & Heaps/sortAnAlmostSortedArray.java b/Sorting, Searching, & Heaps/SortAnAlmostSortedArray/SortAnAlmostSortedArray.java similarity index 100% rename from Sorting, Searching, & Heaps/sortAnAlmostSortedArray.java rename to Sorting, Searching, & Heaps/SortAnAlmostSortedArray/SortAnAlmostSortedArray.java diff --git a/Stacks & Queues/evaluateReversePolishNotation.java b/Stacks & Queues/EvaluateReversePolishNotation/EvaluateReversePolishNotation.java similarity index 100% rename from Stacks & Queues/evaluateReversePolishNotation.java rename to Stacks & Queues/EvaluateReversePolishNotation/EvaluateReversePolishNotation.java diff --git a/Stacks & Queues/maxStack.java b/Stacks & Queues/MaxStack/MaxStack.java similarity index 100% rename from Stacks & Queues/maxStack.java rename to Stacks & Queues/MaxStack/MaxStack.java diff --git a/Stacks & Queues/queueWith2Stacks.java b/Stacks & Queues/QueueWith2Stacks/QueueWith2Stacks.java similarity index 100% rename from Stacks & Queues/queueWith2Stacks.java rename to Stacks & Queues/QueueWith2Stacks/QueueWith2Stacks.java diff --git a/Trees, Binary Trees, & Binary Search Trees/allNodesDistanceKFromStart.java b/Trees, Binary Trees, & Binary Search Trees/AllNodesDistanceKFromStart/AllNodesDistanceKFromStart.java similarity index 100% rename from Trees, Binary Trees, & Binary Search Trees/allNodesDistanceKFromStart.java rename to Trees, Binary Trees, & Binary Search Trees/AllNodesDistanceKFromStart/AllNodesDistanceKFromStart.java diff --git a/Trees, Binary Trees, & Binary Search Trees/fundamentalTraversals.java b/Trees, Binary Trees, & Binary Search Trees/FundamentalTraversals/FundamentalTraversals.java similarity index 100% rename from Trees, Binary Trees, & Binary Search Trees/fundamentalTraversals.java rename to Trees, Binary Trees, & Binary Search Trees/FundamentalTraversals/FundamentalTraversals.java diff --git a/Trees, Binary Trees, & Binary Search Trees/heightBalancedBinaryTree.java b/Trees, Binary Trees, & Binary Search Trees/HeightBalancedBinaryTree/HeightBalancedBinaryTree.java similarity index 100% rename from Trees, Binary Trees, & Binary Search Trees/heightBalancedBinaryTree.java rename to Trees, Binary Trees, & Binary Search Trees/HeightBalancedBinaryTree/HeightBalancedBinaryTree.java diff --git a/Trees, Binary Trees, & Binary Search Trees/levelOrderTraversal.java b/Trees, Binary Trees, & Binary Search Trees/LevelOrderTraversal/LevelOrderTraversal.java similarity index 100% rename from Trees, Binary Trees, & Binary Search Trees/levelOrderTraversal.java rename to Trees, Binary Trees, & Binary Search Trees/LevelOrderTraversal/LevelOrderTraversal.java diff --git a/Trees, Binary Trees, & Binary Search Trees/lowestCommonAncestorBinaryTree.java b/Trees, Binary Trees, & Binary Search Trees/LowestCommonAncestorBinaryTree/LowestCommonAncestorBinaryTree.java similarity index 100% rename from Trees, Binary Trees, & Binary Search Trees/lowestCommonAncestorBinaryTree.java rename to Trees, Binary Trees, & Binary Search Trees/LowestCommonAncestorBinaryTree/LowestCommonAncestorBinaryTree.java diff --git a/Trees, Binary Trees, & Binary Search Trees/minHeightBst.java b/Trees, Binary Trees, & Binary Search Trees/MinHeightBst/MinHeightBst.java similarity index 100% rename from Trees, Binary Trees, & Binary Search Trees/minHeightBst.java rename to Trees, Binary Trees, & Binary Search Trees/MinHeightBst/MinHeightBst.java diff --git a/Trees, Binary Trees, & Binary Search Trees/pathSum.java b/Trees, Binary Trees, & Binary Search Trees/PathSum/PathSum.java similarity index 100% rename from Trees, Binary Trees, & Binary Search Trees/pathSum.java rename to Trees, Binary Trees, & Binary Search Trees/PathSum/PathSum.java diff --git a/Trees, Binary Trees, & Binary Search Trees/serializeDeserializeBinaryTree.java b/Trees, Binary Trees, & Binary Search Trees/SerializeDeserializeBinaryTree/SerializeDeserializeBinaryTree.java similarity index 100% rename from Trees, Binary Trees, & Binary Search Trees/serializeDeserializeBinaryTree.java rename to Trees, Binary Trees, & Binary Search Trees/SerializeDeserializeBinaryTree/SerializeDeserializeBinaryTree.java