https://github.com/ayeujjawalsingh/java-practice-codes-and-notes
Java Notes & Codes for better understanding and it contains all the funtions with examples and also added Cheat Sheet for Revision...
https://github.com/ayeujjawalsingh/java-practice-codes-and-notes
ayeujjawal ayeujjawalsingh codechef codeforces gfg hackerrank java java-codes leetcode-java
Last synced: 4 months ago
JSON representation
Java Notes & Codes for better understanding and it contains all the funtions with examples and also added Cheat Sheet for Revision...
- Host: GitHub
- URL: https://github.com/ayeujjawalsingh/java-practice-codes-and-notes
- Owner: ayeujjawalsingh
- Created: 2022-02-21T20:16:03.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-03-27T17:36:04.000Z (over 3 years ago)
- Last Synced: 2025-01-07T22:42:59.679Z (6 months ago)
- Topics: ayeujjawal, ayeujjawalsingh, codechef, codeforces, gfg, hackerrank, java, java-codes, leetcode-java
- Language: Java
- Homepage: https://www.linkedin.com/in/ayeujjawalsingh/
- Size: 2.08 MB
- Stars: 5
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
#
Complete Java + DSA Syllabus
## Syallbus
- ### Functions
- Scoping in Java
- Shadowing
- Variable Length Arguments
- Overloading
- ### Arrays
- Memory management
- Input and Output
- ArrayList Introduction
- Searching
- Linear Search
- Binary Search
- Modified Binary Search
- Binary Search on 2D Arrays
- Sorting
- Insertion Sort
- Selection Sort
- Bubble Sort
- Cyclic Sort
- ### Pattern questions(Self Practice)
- ### Strings
- How Strings work
- Comparison of methods
- Operations in Strings
- StringBuilder in java
- ### Maths for DSA
- Complete Bitwise Operators
- Range of numbers
- Prime numbers
- Sieve of Eratosthenes
- Newton's Square Root Method
- Factors
- Modulo properties
- Number Theory
- HCF / LCM
- Euclidean algorithm
- ### Recursion
- Flow of recursive programs - stack
- Tree building of function calls
- Tail recursion
- Sorting
- Merge Sort
- Quick Sort
- Backtracking
- N-Queens
- N-Knights
- Sudoku Solver
- Maze problems
- Recursion String Problems
- Recursion Google, Amazon Questions
- Recursion Array Problems
- Recursion Pattern Problems
- Subset Questions
- ### Space and Time Complexity Analysis
- Comparisons of various cases
- Solving Linear Recurrence Relations
- Solving Divide and Conquer Recurrence Relations
- Big-O, Big-Omega, Big-Theta Notations
- Little Notations
- Get equation of any relation easily - best and easiest approach
- Complexity discussion of all the problems we do
- Space Complexity
- NP-Completeness Introduction
- ### Object Oriented Programming
- Classes & its instances
- this keyword in Java
- Properties
- Inheritance
- Abstraction
- Polymorphism
- Encapsulation
- Overloading & Overriding
- Static & Non-Static
- Packages
- Access Control
- Interfaces
- Abstract Classes
- Annotations
- Singleton Class
- final, finalize, finally
- Object Cloning
- Object Class
- Generics
- Exception Handling
- Collections Framework
- Vector Class
- Lambda Expression
- Enums
- ### Linked List
- Singly + Doubly + Circular LinkedList
- Fast and slow pointer
- Cycle Detection
- Reversal of LinkedList
- Linked List + Recursion
- ### Stacks & Queues
- Push efficient
- Pop efficient
- Circular Queue
- Queue using Stack and Vice versa
- Interview problems
- ### Trees
- Binary Trees
- Binary Search Trees
- DFS
- BFS
- AVL Trees
- Segment Tree
- ### Heaps
- Theory
- Priority Queue
- Heapsort
- Two Heaps Method
- k-way merge
- Top k elements
- Interval problems
- ### HashMap
- Theory - how it works
- Comparisons of various forms
- Limitations and how to solve
- Map using LinkedList
- Map using Hash
- Count Sort
- Radix Sort
- Chaining
- Probing
- Huffman-Encoder
- ### Subarray Questions: Sliding window, Two Pointer, Kadane's Algorithm
- ### Graphs
- BFS
- DFS
- Working with graph components
- Minimum Spanning Trees
- Kruskal Algorithm
- Prims Algorithm
- Dijkstra’s shortest path algorithm
- Topological Sort
- Bellman ford
- A* pathfinding Algorithm
- ### Dynamic Programming
- Recursion + Recursion DP + Iteration + Iteration Space Optimized
- Complexity Analysis
- 0/1 Knapsack
- Subset Questions
- Unbounded Knapsack
- Subsequence questions
- String DP
- ### Greedy Algorithms
- ### Tries## Advanced concepts apart from interviews
- Fast IO
- File handling
- Bitwise + DP
- Extended Euclidean algorithm
- Modulo Multiplicative Inverse
- Linear Diophantine Equations
- Matrix Exponentiation
- Mathematical Expectation
- Catalan Numbers
- Fermat’s Theorem
- Wilson's Theorem
- Euler's Theorem
- Lucas Theorem
- Chinese Remainder Theorem
- Euler Totient
- NP-Completeness
- Multithreading
- Fenwick Tree / Binary Indexed Tree
- Square Root Decomposition