Welcome to the Java_With_DSA GitHub repository! This is where I embark on a ๐ 100-day DSA (Data Structures and Algorithms) challenge ๐ with Java, pushing new questions and answers daily. Dive in with me as we explore various DSA problems, enhancing our Java skills and preparing for interviews along the way!
Below is the journey we'll take, one day at a time, through the fascinating world of data structures and algorithms.
- Day 1: ๐ญ Rat in a Maze
- Day 2: ๐ฑ KeyPad Combination
- Day 3: โ Knight's Tour
- Day 4: ๐ง Container with Max Water
- Day 5: ๐ถโโ๏ธ Lonely Number in a List
- Day 6: ๐บ Polygon with Largest Perimeter
- Day 7: ๐ข Least Number of Unique Integers
- Day 8: ๐ Rotate Array
- Day 9: ๐ Buy and Sell Stocks
- Day 10: ๐ฎ Game with String
- Day 11: ๐ฐ Max Sum of Subarray (Kadane's Algorithm)
- Day 12: ๐ Bitwise AND (&) Operation in a Given Range
- Day 13: ๐ Search In Sorted Rotated Array
- Day 14: ๐ Group Anagrams
- Day 15: ๐ Valid Parenthesis
- Day 16: ๐ Longest Common Prefix
- Day 17: ๐ String Subsequences
- Day 18: ๐ Subsequences with sum K
- Day 19: ๐ Merge Sort
- Day 20: ๐งต Convert Array into Linked List
- Day 21: ๐๏ธ Peak Element
- Day 22: ๐ซ First element to occur at K times
- Day 23: ๐ Remove nth Node from Last
- Day 24: ๐ฅ Insert at Head and Last postion in Linked list
- Day 25: ๐ฅ Insert at given index and after a given val in Linked list
- Day 26: ๐ฅ Deletion in Linked List(from scratch)
- Day 27: ๐ฏ Find Mid of Linked List
- Day 28: ๐ Implement Queue using stacks
- Day 29: ๐ Convert Array into Doubly Linked List
- Day 30: ๐ข Remove duplicate characters from string
- Day 31: ๐ข Custom Sort String
- Day 32: ๐ฅ Print Pattern
- Day 33: ๐ First Unique Character in String
- Day 34: ๐ณ Build Binary Tree
- Day 35: ๐ฒ Inorder Traversal in Binary Tree
- Day 36: ๐ฒ Postorder Traversal in Binary Tree
- Day 37: ๐ฒ Preorder Traversal in Binary Tree
- Day 38: ๐ณ Height of Binary tree
- Day 39: ๐ข Count Nodes of Binary tree
- Day 40: ๐ Sum of Nodes of Binary tree
- Day 41: ๐ Reverse a Linked List
- Day 42: ๐ Check Palindrome in a LinkedList
- Day 43: ๐ Reorder Linked List
- Day 44: ๐ Find the Duplicate number
- Day 45: ๐ฏ Find all Duplicates in an Array
- Day 46: ๐ข Find Smallest Positive
- Day 47: ๐ Subarray Product less than K
- Day 48: ๐ Length of longest subarray with atmost k frequency
- Day 49: ๐ Count subarrays where max element appears atlest K times
- Day 50: ๐ฝ Minimum element in BST
- Day 51: ๐ณ Closest Neighbour in BST
- Day 52: ๐ Length of the Last word
- Day 53: ๐ Isomorphic strings
- Day 54: ๐ Word Search
- Day 55: ๐ Maximum Nesting Depth of the Parentheses
- Day 56: ๐ฅ Make the String Great
- Day 57: ๐ Minimum Remove to Make Valid Parentheses
- Day 58: ๐ Valid Parenthesis String
- Day 59: ๐ฉโ๐ Number of Students Unable to Eat Lunch
- Day 60: ๐ฟ Time to buy tickets
- Day 61: ๐ Reveal Cards In Increasing Order
- Day 62: ๐ Find Pivot Index
- Day 63: ๐ง Trapping Rain Water ...and many more to come!
- Day 64: ๐ Product of Array Except Self
- Day 65: ๐ณ Sum of Left Leaves
- Day 66: ๐ณ Sum Root to Leaf Numbers
- Day 67: ๐ณ Add One Row to Tree
- Day 68: ๐ณ Smallest string Starting From Leaf
- Day 69: ๐๏ธ Island Perimeter
- Day 70: ๐๏ธ Number of Islands
- Day 71: ๐ Find Union of two sorted arrays
- Day 72: ๐ฅ Symmetric trees
- Day 73: ๐ Minimum Depth of Binary Tree
- Day 74: ๐ข Create Graph
- Day 75: ๐ nth Tribonacci number
- Day 76: ๐ฏ BFS(Breath First Search)
- Day 77: ๐ฏ DFS(Depth First Search)
- Day 78: ๐ Has Path?
- Day 79: ๐ Maximum Prime Difference
- Day 80: ๐ Reverse Vowels of String
- Day 81: ๐ Climbing stairs
- Day 82: ๐ฅ Reverse prefix of word
- Day 83: ๐ Largest positive integer that exists with its Negative
- Day 84: ๐ข Compare version number
- Day 85: ๐ Boats to save people
- Day 86: ๐ฏ Determine if two strings are close
- Day 87: ๐ฏ Maximum average subarray
- Day 88: ๐ Double a number represented as a linked list
- Day 89: ๐ Relative ranks
- Day 90: ๐ Maximize Happiness of Selected Children
- Day 91: ๐ฅ K th smallest prime fraction
- Day 92: ๐ Minimum cost to hire k workers
- Day 93: ๐ Largest local values in a matrix
- Day 94: ๐ฉโ๐ Add two numbers
- Day 95: ๐ฟ Path with maximum gold
- Day 96: ๐ Wildcard matching
- Day 97: ๐ Evaluate boolean binary tree
- Day 98: ๐ง Delete leaves with a given value
- Day 99: ๐ Distribute coins in binary tree
- Day 100: ๐ณ Jump game
Each day, a new folder will be added to this repository containing:
- A README.md file explaining the day's problem statement, including examples and constraints.
- A Solution.java file with the solution code.
- An Input.txt file with sample inputs.
- An Output.txt file with expected outputs.
Feel free to clone this repository, explore the solutions, and even contribute by suggesting alternative solutions or improvements!
git clone https://github.com/officialRanjanaDevi/Java_With_DSA-.git
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Let's dive deep into the world of Java and DSA, one day at a time! Happy coding! ๐ป