Add two numbers as a linked list |
Microsoft |
AddTwoNumbersAsALinkedList.java |
Done |
Longest Substring Without Repeating Characters |
Microsoft |
LongestSubstring.java |
Done |
Longest Palindromic Substring |
Twitter |
LongestPalindromicSubstring.java |
Done |
Validate Balanced Parentheses |
Uber |
ValidateBalancedParentheses.java |
Done |
First and Last Indices of an Element in a Sorted Array |
Airbnb |
FirstAndLastIndices.java |
Done |
Reverse a Linked List |
Google |
ReverseALinkedList.java |
Done |
Sorting a list with 3 unique numbers |
Google |
SortingAListWith3UniqueNumbers.java |
Done |
Two-Sum |
Facebook |
TwoSum.java |
Done |
Find the non-duplicate number |
Facebook |
FindTheNonDuplicateNumber.java |
Done |
Non-decreasing Array with Single Modification |
Microsoft |
NonDecreasingArrayWithSingleModification.java |
Done |
Floor and Ceiling of a Binary Search Tree |
Apple |
FloorAndCeilingOfABinarySearchTree.java |
To Do |
Invert a Binary Tree |
Twitter |
InvertABinaryTree.java |
Done |
Maximum In A Stack |
Twitter |
MaximumInAStack.java |
Done |
Number of Ways to Climb Stairs |
LinkedIn |
ClimbingStairs.java |
Done |
Find Pythagorean Triplets |
Uber |
FindPythagoreanTriplets.java |
Done |
Edit Distance |
Airbnb |
EditDistance.java |
To Do |
Create a Simple Calculator |
Google |
CreateASimpleCalculator.java |
Done |
Longest Sequence with Two Unique Numbers |
Facebook |
LongestSequenceWithTwoUniqueNumbers.java |
Done |
Find Cycles in a Graph |
Facebook |
FindCyclesInAGraph.java |
To Do |
Word Search |
Amazon |
WordSearch.java |
Done |
Minimum Size Subarray Sum |
Amazon |
MinimumSizeSubarraySum.java |
Done |
Ways to Traverse a Grid |
Microsoft |
WaysToTraverseAGrid.java |
To Do |
Intersection of Linked Lists |
Apple |
IntersectionOfLinkedLists.java |
Done |
Falling Dominoes |
Twitter |
FallingDominoes.java |
To Do |
Remove Consecutive Nodes that Sum to 0 |
Uber |
RemoveConsecutiveNodesZeroSum.java |
Done |
Remove k-th Last Element From Linked List |
Airbnb |
RemoveKthLastElementFromLinkedList.java |
Done |
Witness of The Tall People |
Google |
WitnessOfTheTallPeople.java |
To Do |
Course Prerequisites |
Google |
CoursePrerequisites.java |
To Do |
Move Zeros |
Facebook |
MoveZeroes.java |
Done |
Find the k-th Largest Element in a List |
Facebook |
KthLargestElementInAList.java |
Done |
Spiral Traversal of Grid |
Amazon |
SpiralTraversalOfGrid.java |
To Do |
Largest Product of 3 Elements |
Microsoft |
LargestProductOfThreeElements.java |
Done |
Merge Overlapping Intervals |
Microsoft |
MergeOverlappingIntervals.java |
Done |
Maximum Profit From Stocks |
Apple |
MaximumProfitFromStocks.java |
To Do |
Queue Using Two Stacks |
Apple |
QueueUsingTwoStacks.java |
Done |
Contiguous Subarray with Maximum Sum |
Twitter |
ContiguousSubarrayWithMaximumSum.java |
Done |
Merge K Sorted Linked Lists |
Twitter |
MergeKSortedLinkedLists.java |
To Do |
Create a balanced binary search tree |
LinkedIn |
CreateABalancedBinarySearchTree.java |
Done |
Trapping Rainwater |
Uber |
TrappingRainwater.java |
To Do |
Buddy Strings |
Airbnb |
BuddyStrings.java |
Done |
Deepest Node in a Binary Tree |
Google |
DeepestNodeInABinaryTree.java |
To Do |
Look and Say Sequence |
Google |
LookAndSaySequence.java |
To Do |
First Missing Positive Integer |
Facebook |
FirstMissingPositiveInteger.java |
To Do |
Validate Binary Search Tree |
Facebook |
ValidateBinarySearchTree.java |
Done |
Get all Values at a Certain Height in a Binary Tree |
Amazon |
GetAllValuesAtACertainHeightInABinaryTree.java |
To Do |
Longest Substring With K Distinct Characters |
Amazon |
LongestSubstringWithKDistinctCharacters.java |
To Do |
Count Number of Unival Subtrees |
Microsoft |
CountNumberOfUnivalSubtrees.java |
To Do |
Reconstrunct Binary Tree from Preorder and Inorder Traversals |
Microsoft |
ReconstrunctBinaryTreeFromPreorderAndInorderTraversals.java |
Done |
Sort Colors |
Apple |
SortColors.java |
Done |
Word Ordering in a Different Alphabetical Order |
Apple |
WordOrderingInADifferentAlphabeticalOrder.java |
To Do |
3 Sum |
Twitter |
ThreeSum.java |
Done |
Largest BST in a Binary Tree |
Twitter |
LargestBSTInABinaryTree.java |
To Do |
Find the Number of Islands |
LinkedIn |
FindTheNumberOfIslands.java |
To Do |
Minimum Removals for Valid Parenthesis |
Uber |
MinimumRemovalsForValidParenthesis.java |
To Do |
Group Words that are Anagrams |
Airbnb |
GroupWordsThatAreAnagrams.java |
Done |
Running Median |
Google |
RunningMedian.java |
To Do |
Room scheduling |
Google |
RoomScheduling.java |
To Do |
Reverse Words in a String |
Facebook |
ReverseWordsInAString.java |
Done |
Merge List Of Number Into Ranges |
Facebook |
MergeListOfNumberIntoRanges.java |
To Do |
Product of Array Except Self |
Amazon |
ProductOfArrayExceptSelf.java |
Done |
Given two arrays, write a function to compute their intersection |
Amazon |
Intersection.java |
To Do |
Longest Increasing Subsequence |
Microsoft |
LongestIncreasingSubsequence.java |
To Do |
Angles of a Clock |
Microsoft |
AnglesOfAClock.java |
To Do |
Arithmetic Binary Tree |
Apple |
ArithmeticBinaryTree.java |
To Do |
Tree Serialization |
Apple |
TreeSerialization.java |
To Do |
Distribute Bonuses |
Twitter |
DistributeBonuses.java |
To Do |
Min Range Needed to Sort |
Twitter |
MinRangeNeededToSort.java |
To Do |
Reverse Integer |
LinkedIn |
ReverseInteger.java |
Done |
Min Stack |
Uber |
MinimumStack.java |
Done |
Full Binary Tree |
Google |
FullBinaryTree.java |
To Do |
Decode String |
Google |
DecodeString.java |
To Do |
Circle of Chained Words |
Facebook |
CircleOfChainedWords.java |
To Do |
Jump to the End |
Facebook |
JumpToTheEnd.java |
To Do |
H-Index |
Amazon |
HIndex.java |
Done |
Symmetric k-ary Tree |
Microsoft |
SymmetricKAryTree.java |
Done |
Max and Min with Limited Comparisons |
Microsoft |
MaxAndMinWithLimitedComparisons.java |
To Do |
Nth Fibonacci Number |
Apple |
NthFibonacciNumber.java |
Done |
Find the Single Element in an Array of Duplicates |
Apple |
FindTheSingleElement.java |
Done |
Convert Roman Numerals to Decimal |
Twitter |
ConvertRomanNumeralsToDecimal.java |
Done |
String Compression |
Twitter |
ConvertRomanNumeralsToDecimal.java |
Done |
No Adjacent Repeating Characters |
LinkedIn |
NoAdjacentRepeatingCharacters.java |
To Do |
Make the Largest Number |
Uber |
MakeTheLargestNumber.java |
Done |
Smallest Number that is not a Sum of a Subset of List |
Airbnb |
SmallestNumber.java |
Done |
Maximum Path Sum in Binary Tree |
Facebook |
MaximumPathSumInBinaryTree.java |
To Do |
Permutations of numbers |
Facebook |
PermutationsOfNumbers.java |
To Do |
Longest Consecutive Sequence |
Amazon |
LongestConsecutiveSequence.java |
To Do |
Subarray With Target Sum |
Amazon |
SubarrayWithTargetSum.java |
To Do |
Determine If Linked List is Palindrome |
Microsoft |
LinkedListIsPalindrome.java |
To Do |
Level Order Traversal of Binary Tree |
Microsoft |
LevelOrderTraversalOfBinaryTree.java |
To Do |
Shifted String |
Apple |
ShiftedString.java |
To Do |
Lowest Common Ancestor of 2 Nodes in Binary Tree |
Apple |
LowestCommonAncestor.java |
To Do |
Binary Tree Level with Minimum Sum |
Twitter |
BinaryTreeLevelWithMinimumSum.java |
To Do |
Find Missing Numbers in an Array |
Twitter |
FindMissingNumbers.java |
To Do |
Plus One |
LinkedIn |
PlusOne.java |
To Do |
Detect Linked List Cycle |
Uber |
DetectLinkedListCycle.java |
To Do |
Top K Frequent words |
Airbnb |
TopKFrequentWords.java |
To Do |
Design Tic-Tac-Toe |
Google |
DesignTicTacToe.java |
To Do |
Absolute Path |
Facebook |
AbsolutePath.java |
To Do |
Reverse a Directed Graph |
Facebook |
ReverseADirectedGraph.java |
To Do |
Compare Version Numbers |
Amazon |
CompareVersionNumbers.java |
To Do |
Spreadsheet Column Title |
Amazon |
SpreadsheetColumnTitle.java |
To Do |
Consecutive Ones |
Microsoft |
SpreadsheetColumnTitle.java |
To Do |
Generate All IP Addresses |
Microsoft |
SpreadsheetColumnTitle.java |
To Do |
Spreadsheet Columns |
Apple |
SpreadsheetColumnTitle.java |
To Do |
Print a tree level-by-level, with line-breaks |
Apple |
PrintATreeLevelByLevel.java |
To Do |
Palindrome Integers |
Twitter |
PalindromeIntegers.java |
Done |
Fix Brackets |
Twitter |
FixBrackets.java |
To Do |
Most Frequent Subtree Sum |
LinkedIn |
MostFrequentSubtreeSum.java |
To Do |
Sort a Partially Sorted List |
Uber |
SortPartiallySortedList.java |
To Do |
Multitasking |
Airbnb |
Multitasking.java |
To Do |
Staying on a Chess Board |
Google |
StayingOnAChessBoard.java |
To Do |
Making a Height Balanced Binary Search Tree |
Google |
HeightBalancedBinarySearchTree.java |
To Do |
Kaprekar's Constant |
Facebook |
KaprekarsConstant.java |
To Do |
City Skyline |
Facebook |
CitySkyline.java |
To Do |
Number of Cousins |
Amazon |
NumberofCousins.java |
To Do |
Generate Binary Search Trees |
Amazon |
GenerateBinarySearchTrees.java |
To Do |
UTF-8 Validator |
Microsoft |
UTF8Validator.java |
To Do |
Fixed Point |
Apple |
FixedPoint.java |
To Do |
ZigZag Binary Tree |
Apple |
ZigZagBinaryTree.java |
To Do |
Sorting Window Range |
Twitter |
SortingWindowRange.java |
To Do |
Determine Height Balanced Binary Tree |
Twitter |
HeightBalancedBinaryTree.java |
To Do |
Rectangle Intersection |
LinkedIn |
RectangleIntersection.java |
To Do |
Postorder Traversal |
Uber |
PostorderTraversal.java |
To Do |
Rotate Linked List |
Airbnb |
RotateLinkedList.java |
To Do |
Character Map |
Google |
CharacterMap.java |
To Do |
Flatten Dictionary |
Google |
FlattenDictionary.java |
To Do |
Reverse Polish Notation Calculator |
Facebook |
ReversePolishNotationCalculator.java |
To Do |
Shortest unique prefix |
Facebook |
ShortestUniquePrefix.java |
To Do |
Reverse bits |
Amazon |
ReverseBits.java |
To Do |
First recurring character |
Amazon |
FirstRecurringCharacter.java |
To Do |
Maze Paths |
Microsoft |
MazePaths.java |
To Do |
Check for Palindrome |
Microsoft |
CheckForPalindrome.java |
To Do |
Nearest Points |
Apple |
NearestPoints.java |
To Do |
Optimized List Sum |
Apple |
OptimizedListSum.java |
To Do |
Filter Binary Tree Leaves |
Twitter |
FilterBinaryTreeLeaves.java |
To Do |
Swap Every Two Nodes in a Linked List |
Twitter |
SwapEveryTwoNodesInALinkedList.java |
To Do |
Partition a List |
LinkedIn |
PartitionAList.java |
To Do |
Making Change |
Uber |
MakingChange.java |
To Do |
Phone Numbers |
Airbnb |
PhoneNumbers.java |
To Do |
Largest Path Sum from Root To Leaf |
Google |
LargestPathSumFromRootToLeaf.java |
To Do |
Inorder Successor |
Google |
InorderSuccessor.java |
To Do |
Rotate Array |
Facebook |
RotateArray.java |
To Do |
Determine if number |
Amazon |
DetermineIfNumber.java |
To Do |
Picking up Change |
Amazon |
PickingUpChange.java |
To Do |
Sorted Square Numbers |
Microsoft |
SortedSquareNumbers.java |
To Do |
Level of tree with Maximum Sum |
Microsoft |
LevelOfTreeWithMaximumSum.java |
To Do |
Find subtree |
Apple |
FindSubtree.java |
To Do |
Reverse words |
Apple |
ReverseWords.java |
To Do |
Anagrams in a string |
Twitter |
AnagramsInAString.java |
Done |
Swap bits |
Twitter |
SwapBits.java |
To Do |
String to Integer |
LinkedIn |
StringToInteger.java |
To Do |
Rotate Matrix |
Uber |
RotateMatrix.java |
To Do |
Power Function |
Uber |
PowerFunction.java |
To Do |
Squareroot |
Google |
Squareroot.java |
To Do |
Missing Ranges |
Google |
MissingRanges.java |
To Do |
Sudoku Check |
Facebook |
SudokuCheck.java |
To Do |
Sum of Squares |
Facebook |
SumOfSquares.java |
To Do |
Schedule Tasks |
Amazon |
ScheduleTasks.java |
To Do |
Remove Duplicate from Linked List |
Amazon |
RemoveDuplicateFromLinkedList.java |
To Do |
Queens on a chessboard |
Microsoft |
QueensOnAchessboard.java |
To Do |
Remove One Layer of Parenthesis |
Microsoft |
RemoveOneLayerOfParenthesis.java |
To Do |
Number of Connected Components |
Apple |
NumberOfConnectedComponents.java |
To Do |
Convert to Base Two |
Apple |
ConvertToBaseTwo.java |
To Do |
Split a Binary Search Tree |
Twitter |
SplitABinarySearchTree.java |
To Do |
Find Closest Points |
LinkedIn |
FindClosestPoints.java |
To Do |
Duplicate Subtrees |
Uber |
DuplicateSubtrees.java |
To Do |
K Closest Elements |
Airbnb |
KClosestElements.java |
To Do |
Index of Larger Next Number |
Google |
IndexOfLargerNextNumber.java |
To Do |
Remove Character to Create Palindrome |
Google |
RemoveCharacterToCreatePalindrome.java |
To Do |
Number of Meeting Rooms |
Facebook |
NumberOfMeetingRooms.java |
To Do |
Convert Fraction to Decimal |
Facebook |
ConvertTractionToDecimal.java |
To Do |
Primes |
Amazon |
Primes.java |
Done |
Convert to Hexadecimal |
Amazon |
ConvertToHexadecimal.java |
To Do |
Multiply |
Microsoft |
Multiply.java |
To Do |
Remove Adjacent Duplicate Characters |
Apple |
RemoveAdjacentDuplicateCharacters.java |
To Do |
Common Characters |
Apple |
CommonCharacters.java |
To Do |
Transpose Matrix |
Twitter |
TransposeMatrix.java |
To Do |
Intersection of Lists |
Twitter |
IntersectionOfLists.java |
To Do |
Minimum Number of Operations |
LinkedIn |
MinimumNumberOfOperations.java |
To Do |
Shortest Distance to Character |
Uber |
ShortestDistanceToCharacter.java |
To Do |
Pascal's Triangle |
Airbnb |
PascalsTriangle.java |
To Do |
Closest to 3 Sum |
Google |
ClosestTo3Sum.java |
To Do |
Sum Binary Numbers |
Facebook |
SumBinaryNumbers.java |
To Do |
Reshaping Matrix |
Facebook |
ReshapingMatrix.java |
To Do |
Reverse Integer |
Amazon |
ReverseInteger.java |
To Do |
Decimal to Roman |
Amazon |
DecimalToRoman.java |
To Do |
Longest Common Prefix |
Microsoft |
LongestCommonPrefix.java |
To Do |
4 Sum |
Microsoft |
FourSum.java |
To Do |
Generate Brackets |
Apple |
GenerateBrackets.java |
To Do |
Remove Duplicates From Sorted List |
Apple |
RemoveDuplicatesFromSortedList.java |
To Do |
Unique Sum Combinations |
Twitter |
UniqueSumCombinations.java |
To Do |
Range Searching in a Sorted List |
Twitter |
RangeSearchingInASortedList.java |
To Do |
Minimum Depth of Binary Tree |
LinkedIn |
MinimumDepthOfBinaryTree.java |
To Do |
Target Sum from Root to Leaf |
Uber |
TargetSumFromRootToLeaf.java |
To Do |
Majority Element |
Airbnb |
MajorityElement.java |
To Do |
Number of 1 bits |
Google |
NumberOf1Bits.java |
Done |
Maximum Non Adjacent Sum |
Google |
MaximumNonAdjacentSum.java |
To Do |
Searching a Matrix |
Facebook |
SearchingAMatrix.java |
To Do |
Generate all subsets |
Facebook |
GenerateAllSubsets.java |
To Do |
Flatten Binary Tree |
Amazon |
FlattenBinaryTree.java |
To Do |
Root to leaf numbers summed |
Amazon |
RootToLeafNumbersSummed.java |
To Do |
Deep Copy Graph |
Microsoft |
DeepCopyGraph.java |
To Do |
LRU Cache |
Apple |
LRUCache.java |
To Do |
Sorting a list with 3 unique numbers |
Google |
SortingAListWith3UniqueNumbers.java |
Done |
Find the k-th Largest Element in a List |
Facebook |
FindTheKthLargestElementInAList.java |
Done |
Palindrome Integers |
Twitter |
PalindromeIntegers.java |
Done |