Track your progress with emojis and checklists!
- [🟢] Array 🧮
- [✅] Creation: Initialize static/dynamic arrays.
- [✅] Updation:
- [✅] Insertion (at ends/positions)
- [✅] Deletion (at ends/positions)
- [✅] Access: Index-based retrieval.
- [✅] Search:
- [✅] Linear search
- [✅] Binary search (sorted arrays)
- [✅] Sorting:
- [✅] Bubble sort
- [✅] Insertion sort
- [✅] Selection sort
- [✅] Merge sort
- [✅] Quicksort
- [✅] Traversal: Forward/backward iteration.
- Linked List 🔗
- [❌] Creation:
- [❌] Singly linked list initialization
- [❌] Doubly linked list initialization
- [❌] Circular linked list initialization
- [❌] Updation:
- [❌] Insertion (head, tail, middle)
- [❌] Deletion:
- [❌] By value
- [❌] By position
- [❌] Access: Node traversal, search.
- [❌] Reversal:
- [❌] Reverse the entire list
- [❌] Reverse a sublist
- [❌] Cycle Detection: Check for loops (Floyd’s algorithm).
- [❌] Creation:
- Stack 📚
- [❌] Creation: Initialize stack (array/linked list).
- [❌] Operations:
- [❌] Push: Add to top.
- [❌] Pop: Remove from top.
- [❌] Peek: View top element.
- [❌] isEmpty/IsFull: Check status.
- [❌] Applications:
- [❌] Undo/redo
- [❌] Function call management
- Queue 🚶♂️🚶♀️
- [❌] Creation: Initialize queue (array/linked list/circular).
- [❌] Operations:
- [❌] Enqueue: Add to rear.
- [❌] Dequeue: Remove from front.
- [❌] Front/Rear: View front/rear elements.
- [❌] isEmpty/IsFull: Check status.
- [❌] Variants:
- [❌] Priority Queue
- [❌] Breadth-First Search (BFS)
- Hash Table 🗝️
- [❌] Creation: Initialize hash table (array + hash function).
- [❌] Operations:
- [❌] Insert: Key-value pair.
- [❌] Delete: By key.
- [❌] Search: By key.
- [❌] Collision Handling:
- [❌] Chaining
- [❌] Open addressing (linear probing, quadratic probing).
- [❌] Resizing: Dynamic resizing (load factor).
- Binary Tree 🌳
- [❌] Creation: Root node, child nodes.
- [❌] Operations:
- [❌] Insertion
- [❌] Deletion
- [❌] Search
- [❌] Traversal:
- [❌] Inorder
- [❌] Preorder
- [❌] Postorder
- [❌] Level-order
- Self-Balancing Trees 🌟
- [❌] AVL Tree: Rotate (LL, RR, LR, RL) to balance.
- [❌] Red-Black Tree: Insertion/deletion with color adjustments.
- B-Tree/B+Tree 📊
- [❌] Creation: Index/leaf nodes.
- [❌] Operations:
- [❌] Insertion
- [❌] Deletion
- [❌] Search (range queries)
- Graph 🌐
- [❌] Representation:
- [❌] Adjacency List
- [❌] Adjacency Matrix
- [❌] Operations:
- [❌] Add/Remove Node/Edge
- [❌] Traversal:
- [❌] BFS
- [❌] DFS
- [❌] Algorithms:
- [❌] Shortest path (Dijkstra, Bellman-Ford)
- [❌] Topological sort
- [❌] Minimum spanning tree (Prim’s/Kruskal’s)
- [❌] Representation:
- Heap 🏔️
- [❌] Creation: Build min-heap/max-heap.
- [❌] Operations:
- [❌] Insert: Heapify up.
- [❌] Extract-Min/Max: Heapify down.
- [❌] Search: Not efficient (O(n)).
- [❌] Applications:
- [❌] Priority queues
- [❌] Scheduling
- Advanced Structures 🚀
- [❌] Trie:
- [❌] Insert
- [❌] Delete
- [❌] Search (prefix-based)
- [❌] Disjoint Set Union (DSU):
- [❌] Union
- [❌] Find
- [❌] Path compression
- [❌] Skip List: Layered structure for fast search.
- [❌] Balanced Tree:
- [❌] Splay Tree
- [❌] Treap
- [❌] Trie:
- Specialized Data Structures 🎯
- [❌] Matrix:
- [❌] Row/column operations
- [❌] Sparse/dense representation
- [❌] Stack (Nested): Multi-level stacks (e.g., browser history).
- [❌] Queue (Circular): Fixed-size queue with wraparound.
- [❌] Advanced Hashing:
- [❌] Bloom Filter: Probabilistic existence checks.
- [❌] Cuckoo Hashing: Double hashing for collision resolution.
- [❌] Matrix:
Total Tasks: 85
Completed: 10 🟢 | In Progress: 0 🟠 | Remaining: 75 🔴
Progress: 11.76%
- Main Topics:
- Mark the main topic as
🟢when all its subtopics are completed. - Automatically mark all subtopics under the main topic as
✅.
- Mark the main topic as
- Subtopics:
- If you’re working on individual subtopics, mark them as:
- ✅ for completed tasks
- ⚙️ for in-progress tasks
- ❌ for unstarted tasks
- If you’re working on individual subtopics, mark them as:
- Progress Calculation:
- Update the Progress Tracker manually:
- Count the number of completed (
✅) and in-progress (⚙️) tasks. - Calculate the percentage:
(Completed + InProgress * 0.5) / TotalTasks * 100.
- Count the number of completed (
- Update the Progress Tracker manually:
- Celebrate milestones by adding emojis like 🎉 or 🏆 next to completed sections!
Happy Learning! 🎓💻