148 efficient Java solutions to HackerRank problems
- 10 Days of Statistics (27/27 solutions)
- 30 Days of Code (16/30 solutions)
- Algorithms (10 solutions)
- Cracking the Coding Interview (20/20 solutions)
- Data Structures (34/107 solutions)
- Java (41/65 solutions)
Solutions are coded using Java 8
Domain | Subdomain | Day | Challenge | Difficulty | Solution |
---|---|---|---|---|---|
Tutorials | 10 Days of Statistics | 0 | Mean, Median, and Mode | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 0 | Weighted Mean | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 1 | Quartiles | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 1 | Interquartile Range | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 1 | Standard Deviation | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 2 | Basic Probability | Multiple Choice | Solution.txt |
Tutorials | 10 Days of Statistics | 2 | More Dice | Multiple Choice | Solution.txt |
Tutorials | 10 Days of Statistics | 2 | Compound Event Probability | Multiple Choice | Solution.txt |
Tutorials | 10 Days of Statistics | 3 | Conditional Probability | Multiple Choice | Solution.txt |
Tutorials | 10 Days of Statistics | 3 | Cards of the Same Suit | Multiple Choice | Solution.txt |
Tutorials | 10 Days of Statistics | 3 | Drawing Marbles | Multiple Choice | Solution.txt |
Tutorials | 10 Days of Statistics | 4 | Binomial Distribution I | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 4 | Binomial Distribution II | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 4 | Geometric Distribution I | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 4 | Geometric Distribution II | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 5 | Poisson Distribution I | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 5 | Poisson Distribution II | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 5 | Normal Distribution I | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 5 | Normal Distribution II | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 6 | The Central Limit Theorem I | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 6 | The Central Limit Theorem II | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 6 | The Central Limit Theorem III | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 7 | Pearson Correlation Coefficient I | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 7 | Spearman's Rank Correlation Coefficient | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 8 | Least Square Regression Line | Easy | Solution.java |
Tutorials | 10 Days of Statistics | 8 | Pearson Correlation Coefficient II | Multiple Choice | Solution.txt |
Tutorials | 10 Days of Statistics | 9 | Multiple Linear Regression | Medium | Solution.java |
Domain | Subdomain | Day | Challenge | Difficulty | Solution |
---|---|---|---|---|---|
Tutorials | 30 Days of Code | 0 | Hello, World | Easy | Solution.java |
Tutorials | 30 Days of Code | 1 | Data Types | Easy | Solution.java |
Tutorials | 30 Days of Code | 2 | Operators | Easy | Solution.java |
Tutorials | 30 Days of Code | 3 | Intro to Conditional Statements | Easy | Solution.java |
Tutorials | 30 Days of Code | 4 | Class vs. Instance | Easy | Solution.java |
Tutorials | 30 Days of Code | 5 | Loops | Easy | Solution.java |
Tutorials | 30 Days of Code | 6 | Let's Review | Easy | Solution.java |
Tutorials | 30 Days of Code | 7 | Arrays | Easy | Solution.java |
Tutorials | 30 Days of Code | 8 | Dictionaries and Maps | Easy | Solution.java |
Tutorials | 30 Days of Code | 9 | Recursion | Easy | Solution.java |
Tutorials | 30 Days of Code | 10 | Binary Numbers | Easy | Solution.java |
Tutorials | 30 Days of Code | 11 | 2D Arrays | Easy | Solution.java |
Tutorials | 30 Days of Code | 12 | Inheritance | Easy | Solution.java |
Tutorials | 30 Days of Code | 13 | Abstract Classes | Easy | Solution.java |
Tutorials | 30 Days of Code | 14 | Scope | Easy | Solution.java |
Tutorials | 30 Days of Code | 15 | Linked List | Easy | Solution.java |
Domain | Subdomain | Challenge | Difficulty | Solution |
---|---|---|---|---|
Algorithms | Warmup | Solve Me First | Easy | Solution.java |
Algorithms | Warmup | Simple Array Sum | Easy | Solution.java |
Algorithms | Warmup | Compare the Triplets | Easy | Solution.java |
Algorithms | Warmup | A Very Big Sum | Easy | Solution.java |
Algorithms | Warmup | Diagonal Difference | Easy | Solution.java |
Algorithms | Warmup | Plus Minus | Easy | Solution.java |
Algorithms | Warmup | Staircase | Easy | Solution.java |
Algorithms | Warmup | Time Conversion | Easy | Solution.java |
Algorithms | Warmup | Circular Array Rotation | Easy | Solution.java |
Algorithms | Implementation | Mini-max Sum | Easy | Solution.java |
Domain | Subdomain | Topic | Challenge | Difficulty | Solution |
---|---|---|---|---|---|
Tutorials | Cracking the Coding Interview | Data Structures | Arrays: Left Rotation | Easy | Solution.java |
Tutorials | Cracking the Coding Interview | Data Structures | Strings: Making Anagrams | Easy | Solution.java |
Tutorials | Cracking the Coding Interview | Data Structures | Hash Tables: Ransom Note | Easy | Solution.java |
Tutorials | Cracking the Coding Interview | Data Structures | Linked Lists: Detect a Cycle | Easy | Solution.java |
Tutorials | Cracking the Coding Interview | Data Structures | Stacks: Balanced Brackets | Medium | Solution.java |
Tutorials | Cracking the Coding Interview | Data Structures | Queues: A Tale of Two Stacks | Medium | Solution.java |
Tutorials | Cracking the Coding Interview | Data Structures | Trees: Is This a Binary Search Tree? | Medium | Solution.java |
Tutorials | Cracking the Coding Interview | Data Structures | Heaps: Find the Running Median | Hard | Solution.java |
Tutorials | Cracking the Coding Interview | Data Structures | Tries: Contacts | Hard | Solution.java |
Tutorials | Cracking the Coding Interview | Algorithms | Sorting: Bubble Sort | Medium | Solution.java |
Tutorials | Cracking the Coding Interview | Algorithms | Sorting: Comparator | Medium | Solution.java |
Tutorials | Cracking the Coding Interview | Algorithms | Merge Sort: Counting Inversions | Hard | Solution.java |
Tutorials | Cracking the Coding Interview | Algorithms | Binary Search: Ice Cream Parlor | Medium | Solution.java |
Tutorials | Cracking the Coding Interview | Algorithms | DFS: Connected Cell in a Grid | Hard | Solution.java |
Tutorials | Cracking the Coding Interview | Algorithms | BFS: Shortest Reach in a Graph | Hard | Solution.java |
Tutorials | Cracking the Coding Interview | Techniques / Concepts | Time Complexity: Primality | Medium | Solution.java |
Tutorials | Cracking the Coding Interview | Techniques / Concepts | Recrusion: Fibonacci Numbers | Easy | Solution.java |
Tutorials | Cracking the Coding Interview | Techniques / Concepts | Recursion: Davis' Staircase | Medium | Solution.java |
Tutorials | Cracking the Coding Interview | Techniques / Concepts | DP: Coin Change | Hard | Solution.java |
Tutorials | Cracking the Coding Interview | Techniques / Concepts | Bit Manipulation: Lonely Integer | Easy | Solution.java |
Domain | Subdomain | Challenge | Difficulty | Solution |
---|---|---|---|---|
Data Structures | Arrays | Arrays - DS | Easy | Solution.java |
Data Structures | Arrays | 2D Array - DS | Easy | Solution.java |
Data Structures | Arrays | Dynamic Array | Easy | Solution.java |
Data Structures | Arrays | Left Rotation | Easy | Solution.java |
Data Structures | Arrays | Sparse Arrays | Medium | Solution.java |
Data Structures | Arrays | Algorithmic Crush | Hard | Solution.java |
Data Structures | Linked List | Print the Elements of a Linked List | Easy | Solution.java |
Data Structures | Linked List | Insert a Node at the Tail of a Linked List | Easy | Solution.java |
Data Structures | Linked List | Insert a node at the head of a linked list | Easy | Solution.java |
Data Structures | Linked List | Insert a node at a specific position in a linked list | Easy | Solution.java |
Data Structures | Linked List | Delete a Node | Easy | Solution.java |
Data Structures | Linked List | Print in Reverse | Easy | Solution.java |
Data Structures | Linked List | Reverse a linked list | Easy | Solution.java |
Data Structures | Linked List | Compare two linked lists | Easy | Solution.java |
Data Structures | Linked List | Merge two sorted linked lists | Easy | Solution.java |
Data Structures | Linked List | Get Node Value | Easy | Solution.java |
Data Structures | Linked List | Delete duplicate-value nodes from a sorted linked list | Easy | Solution.java |
Data Structures | Linked List | Cycle Detection | Medium | Solution.java |
Data Structures | Linked List | Find Merge Point of Two Lists | Easy | Solution.java |
Data Structures | Linked List | Inserting a Node Into a Sorted Doubly Linked List | Easy | Solution.java |
Data Structures | Linked List | Reverse a doubly linked list | Easy | Solution.java |
Data Structures | Trees | Tree: Preorder Traversal | Easy | Solution.java |
Data Structures | Trees | Tree: Postorder Traversal | Easy | Solution.java |
Data Structures | Trees | Tree: Inorder Traversal | Easy | Solution.java |
Data Structures | Trees | Tree: Height of a Binary Tree | Easy | Solution.java |
Data Structures | Trees | Tree: Top View | Easy | Solution.java |
Data Structures | Trees | Tree: Level Order Traversal | Easy | Solution.java |
Data Structures | Trees | Binary Search Tree: Insertion | Easy | Solution.java |
Data Structures | Trees | Tree: Huffman Decoding | Medium | Coming Soon! |
Data Structures | Trees | Binary Search Tree: Lowest Common Ancestor | Easy | Coming Soon! |
Data Structures | Trees | Swap Nodes [Algo] | Medium | Coming Soon! |
Data Structures | Trees | Is This a Binary Search Tree? | Medium | Solution.java |
Data Structures | Trees | Square-Ten Tree | Hard | Coming Soon! |
Data Structures | Trees | Balanced Forest | Hard | Coming Soon! |
Data Structures | Balanced Trees | Self Balancing Tree | Medium | Coming Soon! |
Data Structures | Balanced Trees | Array and simple queries | Hard | Coming Soon! |
Data Structures | Balanced Trees | Median Updates | Hard | Coming Soon! |
Data Structures | Stacks | Maximum Element | Easy | Solution.java |
Data Structures | Stacks | Balanced Brackets | Medium | Solution.java |
Data Structures | Stacks | Largest Rectangle | Hard | Coming Soon! |
Data Structures | Stacks | Simple Text Editor | Medium | Coming Soon! |
Data Structures | Stacks | Equal Stacks | Easy | Coming Soon! |
Data Structures | Stacks | Poisonous Plants | Hard | Coming Soon! |
Data Structures | Stacks | AND xor OR | Hard | Coming Soon! |
Data Structures | Stacks | Waiter | Medium | Coming Soon! |
Data Structures | Queues | Queue using Two Stacks | Medium | Solution.java |
Data Structures | Queues | Castle on the Grid | Medium | Coming Soon! |
Data Structures | Queues | Down to Zero II | Medium | Coming Soon! |
Data Structures | Queues | Truck Tour | Hard | Coming Soon! |
Data Structures | Queues | Queries with Fixed Length | Hard | Coming Soon! |
Data Structures | Heap | QHEAP1 | Easy | Coming Soon! |
Data Structures | Heap | Jesse and Cookies | Easy | Coming Soon! |
Data Structures | Heap | Find the Running Median | Hard | Solution.java |
Data Structures | Heap | Minimum Average Waiting Time | Hard | Coming Soon! |
Data Structures | Disjoint Set | Merging Communities | Hard | Coming Soon! |
Data Structures | Disjoint Set | Components in a graph | Medium | Coming Soon! |
Data Structures | Disjoint Set | Kundu and Tree | Hard | Coming Soon! |
Data Structures | Disjoint Set | Super Maximum Cost Queries | Hard | Coming Soon! |
Data Structures | Multiple Choice | Data Structures MCQ 1 | Multiple Choice | Coming Soon! |
Data Structures | Multiple Choice | Data Structures MCQ 2 | Multiple Choice | Coming Soon! |
Data Structures | Multiple Choice | Data Structures MCQ 3 | Multiple Choice | Coming Soon! |
Data Structures | Trie | Contacts | Medium | Solution.java |
Data Structures | Trie | No Prefix Set | Hard | Coming Soon! |
Data Structures | Advanced | Kindergarten Adventures | Medium | Coming Soon! |
Data Structures | Advanced | Cube Summation | Hard | Coming Soon! |
Data Structures | Advanced | Mr. X and His Shots | Medium | Coming Soon! |
Data Structures | Advanced | Direct Connections | Hard | Coming Soon! |
Data Structures | Advanced | Subsequence Weighting | Advanced | Coming Soon! |
Data Structures | Advanced | Jim and the Skyscrapers | Medium | Coming Soon! |
Data Structures | Advanced | Counting On a Tree | Expert | Coming Soon! |
Data Structures | Advanced | Unique Colors | Advanced | Coming Soon! |
Data Structures | Advanced | Self-Driving Bus | Advanced | Coming Soon! |
Data Structures | Advanced | Fibonacci Numbers Tree | Expert | Coming Soon! |
Data Structures | Advanced | Functional Palindromes | Advanced | Coming Soon! |
Data Structures | Advanced | Lazy White Falcon | Hard | Coming Soon! |
Data Structures | Advanced | Ticket to Ride | Expert | Coming Soon! |
Data Structures | Advanced | Heavy Light White Falcon | Hard | Coming Soon! |
Data Structures | Advanced | Sum of the Maximums | Advanced | Coming Soon! |
Data Structures | Advanced | Heavy Light 2 White Falcon | Hard | Coming Soon! |
Data Structures | Advanced | Library Query | Advanced | Coming Soon! |
Data Structures | Advanced | Starfleet | Advanced | Coming Soon! |
Data Structures | Advanced | Almost Equal - Advanced | Expert | Coming Soon! |
Data Structures | Advanced | Almost sorted interval | Expert | Coming Soon! |
Data Structures | Advanced | Burger Happiness | Hard | Coming Soon! |
Data Structures | Advanced | Roy and alpha-beta trees | Hard | Coming Soon! |
Data Structures | Advanced | Coloring Tree | Hard | Coming Soon! |
Data Structures | Advanced | Recalling Early Days GP with Trees | Hard | Coming Soon! |
Data Structures | Advanced | Swaps and Sum | Advanced | Coming Soon! |
Data Structures | Advanced | Arithmetic Progressions | Advanced | Coming Soon! |
Data Structures | Advanced | Coolguy and Two Subsequences | Advanced | Coming Soon! |
Data Structures | Advanced | White Falcon And Tree | Hard | Coming Soon! |
Data Structures | Advanced | Subtrees And Paths | Advanced | Coming Soon! |
Data Structures | Advanced | Triplets | Advanced | Coming Soon! |
Data Structures | Advanced | Beautiful Segments | Expert | Coming Soon! |
Data Structures | Advanced | Divisibility | Expert | Coming Soon! |
Data Structures | Advanced | BST maintenance | Advanced | Coming Soon! |
Data Structures | Advanced | Find Maximum Index Product | Medium | Coming Soon! |
Data Structures | Advanced | Taxicab Driver's Problem | Advanced | Coming Soon! |
Data Structures | Advanced | Jaggu Playing with Balloons | Advanced | Coming Soon! |
Data Structures | Advanced | Dynamic Summation | Hard | Coming Soon! |
Data Structures | Advanced | Two Array Problem | Hard | Coming Soon! |
Data Structures | Advanced | Rooted Tree | Hard | Coming Soon! |
Data Structures | Advanced | The crazy helix | Advanced | Coming Soon! |
Data Structures | Advanced | Network administration | Hard | Coming Soon! |
Data Structures | Advanced | Easy Addition | Expert | Coming Soon! |
Data Structures | Advanced | Find the permutation | Expert | Coming Soon! |
Data Structures | Advanced | Company Retreat | Advanced | Coming Soon! |
Domain | Subdomain | Challenge | Difficulty | Solution |
---|---|---|---|---|
Java | Introduction | Welcome to Java! | Easy | Solution.java |
Java | Introduction | Java Stdin and Stdout I | Easy | Solution.java |
Java | Introduction | Java If-Else | Easy | Solution.java |
Java | Introduction | Java Stdin and Stdout II | Easy | Solution.java |
Java | Introduction | Java Output Formatting | Easy | Solution.java |
Java | Introduction | Java Loops I | Easy | Solution.java |
Java | Introduction | Java Loops II | Easy | Solution.java |
Java | Introduction | Java Datatypes | Easy | Solution.java |
Java | Introduction | Java End-of-file | Easy | Solution.java |
Java | Introduction | Java Static Initializer Block | Easy | Solution.java |
Java | Introduction | Java Int to String | Easy | Solution.java |
Java | Introduction | Java Data and Time | Easy | Solution.java |
Java | Introduction | Java Currency Formatter | Easy | Solution.java |
Java | Strings | Java Strings Introduction | Easy | Solution.java |
Java | Strings | Java Substring | Easy | Solution.java |
Java | Strings | Java String Compare | Easy | Solution.java |
Java | Strings | Java String Reverse | Easy | Solution.java |
Java | Strings | Java Anagrams | Easy | Solution.java |
Java | Strings | Java String Tokens | Easy | Solution.java |
Java | Strings | Pattern Syntax Checker | Easy | Solution.java |
Java | Strings | Java Regex | Medium | Solution.java |
Java | Strings | Java Regex 2 - Duplicate Words | Easy | Solution.java |
Java | Strings | Java Regex 3 - Username Checker | Medium | Solution.java |
Java | Strings | Tag Content Extractor | Medium | Solution.java |
Java | BigNumber | Java BigInteger | Easy | Solution.java |
Java | BigNumber | Java BigDecimal | Medium | Solution.java |
Java | BigNumber | Java Primality Test | Easy | Solution.java |
Java | Data Structures | Java 1D Array | Easy | Solution.java |
Java | Data Structures | Java 2D Array | Easy | Solution.java |
Java | Data Structures | Java Subarray | Easy | Solution.java |
Java | Data Structures | Java Arraylist | Easy | Solution.java |
Java | Data Structures | Java 1D Array (Part 2) | Medium | Solution.java |
Java | Data Structures | Java List | Easy | Solution.java |
Java | Data Structures | Java Map | Easy | Solution.java |
Java | Data Structures | Java Stack | Medium | Solution.java |
Java | Data Structures | Java Hashset | Easy | Solution.java |
Java | Data Structures | Java Generics | Easy | Solution.java |
Java | Data Structures | Java Comparator | Medium | Solution.java |
Java | Data Structures | Java Sort | Easy | Solution.java |
Java | Data Structures | Java Dequeue | Medium | Solution.java |
Java | Data Structures | Java BitSet | Easy | Solution.java |
Java | Data Structures | Java Priority Queue | Medium | Coming Soon! |
Java | Object Oriented Programming | Java Inheritance I | Easy | Coming Soon! |
Java | Object Oriented Programming | Java Inheritance II | Easy | Coming Soon! |
Java | Object Oriented Programming | Java Abstract Class | Easy | Coming Soon! |
Java | Object Oriented Programming | Java Interface | Easy | Coming Soon! |
Java | Object Oriented Programming | Java Method Overriding | Easy | Coming Soon! |
Java | Object Oriented Programming | Java Method Overriding 2 (Super Keyword) | Easy | Coming Soon! |
Java | Object Oriented Programming | Java Instanceof keyword | Easy | Coming Soon! |
Java | Object Oriented Programming | Java Iterator | Easy | Coming Soon! |
Java | Object Oriented Programming | Calculating Volume | Medium | Coming Soon! |
Java | Exception Handling | Java Exception Handling (Try-catch) | Easy | Coming Soon! |
Java | Exception Handling | Java Exception Handling | Easy | Coming Soon! |
Java | Advanced | Java Varargs - Simple Addition | Easy | Coming Soon! |
Java | Advanced | Java Reflection - Attributes | Easy | Coming Soon! |
Java | Advanced | Can You Access | Medium | Coming Soon! |
Java | Advanced | Prime Checker | Medium | Coming Soon! |
Java | Advanced | Java Factory Pattern | Easy | Coming Soon! |
Java | Advanced | Java Singleton Pattern | Easy | Coming Soon! |
Java | Advanced | Java Visitor Pattern | Medium | Coming Soon! |
Java | Advanced | Java Annotations | Medium | Coming Soon! |
Java | Advanced | Covariant Return Types | Easy | Coming Soon! |
Java | Advanced | Java Lambda Expressions | Medium | Coming Soon! |
Java | Advanced | Java MD5 | Medium | Coming Soon! |
Java | Advanced | Java SHA-256 | Medium | Coming Soon! |