Warning
THIS IS MORE LIKE PERSONAL ENGINEER-DEVELOPER NOTEBOOK RATHER THAN REPO WITH BEST-AND-OPTIMAL SOLUTIONS!
Created this to track and motivate myself to "keep in programming shape".
Problem description might be under the circle (C and C++) or name, followed by link to my solution. Some solutions "might" look ancient because some problems provide part of code to work with.
🟢 Easy 🟠 Medium 🔴 Hard
Algorithms
-
Warmup ✅
- 🟢 1x🍒Solve Me First - C++
- 🟢 10x🍒 Simple Array Sum - C++
- 🟢 10x🍒 Compare the Triplets - C++
- 🟢 10x🍒 A Very Big Sum - C++
- 🟢 10x🍒 Diagonal Difference - C++
- 🟢 10x🍒 Plus Minus - C++
- 🟢 10x🍒 Staircase - C++
- 🟢 10x🍒 Mini-Max Sum - C++
- 🟢 10x🍒 Birthday Cake Candles - C++
- 🟢 15x🍒 Time Conversion - C++
-
Implementation
- 🟢 10x🍒 Grading Students - C++
- 🟢 10x🍒 Apple and Orange - C++
- 🟢 10x🍒 Number Line Jumps - C++
- 🟢 10x🍒 Breaking the Records - C++
- 🟢 10x🍒 Subarray Division - C++
- 🟢 10x🍒 Bill Division - C++
- 🟢 10x🍒 Sales by Match - C++
-
Strings
-
Sorting
- 🟢 15x🍒 Big Sorting - C++
- 🟢 15x🍒 tutorial-intro - C++
-
Search
-
Graph Theory
-
Greedy
-
Dynamic Programming
-
Constructive Algorithms
-
Bit Manipulation
-
Recursion
-
Game Theory
-
NP Complete
-
Debugging
Data Structures
- Arrays ✅
- 🟢 10x🍒 Arrays - DS - C++
- 🟢 15x🍒 2D Array - DS - C++
- 🟢 15x🍒 Dynamic Array - C++
- 🟢 20x🍒 Left Rotation - C++
- 🟠 25x🍒 Sparse Arrays - C++
- 🔴 60x🍒 Array Manipulation - C++
- Linked Lists
- 🟢 5x🍒 Print the Elements of a Linked List - C++
- 🟢 5x🍒 Insert a node at the tail of a Linked List - C++
- 🟢 5x🍒 Insert a node at the head of a linked list - C++
- 🟢 5x🍒 Insert a node at a specific position in a linked list - C++
- 🟢 5x🍒 Delete a Node - C++
- 🟢 5x🍒 Print in Reverse - C++
- 🟢 5x🍒 Reverse a linked list - C++
- 🟢 5x🍒 Compare two linked lists - C++
- 🟢 5x🍒 Get Node Value - C++
- 🟢 5x🍒 Delete duplicate-value nodes from a sorted linked list - C++
- 🟢 5x🍒 Inserting a Node Into a Sorted Doubly Linked List - C++
- 🟢 5x🍒 Reverse a doubly linked list - C++
- Trees
- 🟢 10x🍒 Tree: Preorder Traversal - C++
- 🟢 10x🍒 Tree: Postorder Traversal - C++
- 🟢 10x🍒 Tree: Inorder Traversal - C++
- 🟢 10x🍒 Tree: Height of a Binary Tree - C++
- Introduction ✅
- 🟢 5x:cherries: Say "Hello, World!" With C++
- 🟢 5x:cherries: Input and Output
- 🟢 10x:cherries: Basic Data Types
- 🟢 10x:cherries: Conditional Statements
- 🟢 10x:cherries: For Loop
- 🟢 10x:cherries: Functions
- 🟢 10x:cherries: Pointer
- 🟢 10x:cherries: Arrays Introduction
- 🟢 30x:cherries: Variable Sized Arrays
- Strings
- 🟢 10x:cherries: StringStream
- 🟢 10x:cherries: Strings
- 🚧 🟢 10x:cherries: Attribute Parser 🚧
- Classes ✅
- 🟢 10x:cherries: Structs
- 🟢 10x:cherries: Class
- 🟢 20x:cherries: Classes and Objects
- 🟢 30x:cherries: Box It!
- 🟠 30x:cherries: Inherited Code
- 🟠 30x:cherries: Exceptional Server
- 🟠 40x:cherries: Virtual Functions
- 🔴 60x:cherries: Abstract Classes - Polymorphism
- STL ✅
- 🟢 10x:cherries: Vector-Sort
- 🟢 10x:cherries: Vector-Erase
- 🟢 15x:cherries: Lower Bound-STL
- 🟢 15x:cherries: Sets-STL
- 🟢 15x:cherries: Maps-STL
- 🟢 20x:cherries: Print Pretty
- 🟠 50x:cherries: Deque-STL optimum sliding window algorithm
- Inheritance ✅
- 🟢 20x:cherries: Inheritance Introduction
- 🟢 25x:cherries: Rectangle Area
- 🟢 25x:cherries: Multi Level Inheritance
- 🟠 30x:cherries: Accessing Inherited Functions
- 🔴 40x:cherries: Magic Spells Longest Common Subsequence algorithm (dynamic_cast in original problem)
- Debugging ✅
- 🟠 15x:cherries: Hotel Prices
- 🟠 20x:cherries: Cpp exception handling
- 🟠 20x:cherries: Overloading Ostream Operator
- 🟠 40x:cherries: Messages Order
- Other Concepts ✅
- 🟢 20x:cherries: C++ Class Templates
- 🟢 25x:cherries: Preprocessor Solution
- 🟠 25x:cherries: Operator Overloading
- 🟢 30x:cherries: Overload Operators
- 🟠 35x:cherries: Attending Workshops
- 🟠 35x:cherries: C++ Class Template Specialization
- 🔴 80x:cherries: C++ Variadics Variadics and range based loop
- 🔴 80x:cherries: Bit Array poorly described cycle detection...
- Introduction ✅
- 🟢 5x:cherries: "Hello World!" in C
- 🟢 5x:cherries: Playing With Characters
- 🟢 5x:cherries: Sum and Difference of Two Numbers
- 🟢 10x:cherries: Functions in C
- 🟢 10x:cherries: Pointers in C
- Conditionals and Loops
- 🟢 10x:cherries: Conditional Statements in C
- 🟢 10x:cherries: For Loop in C
- 🟢 15x:cherries: Sum of Digits of a Five Digit Number
- 🟢 15x:cherries: Bitwise Operators
- Arrays and Strings ✅
- 🟠 10x:cherries: 1D Arrays in C
- 🟠 20x:cherries: Array Reversal
- 🟠 20x:cherries: Printing Tokens
- 🟠 25x:cherries: Digit Frequency
- 🟠 40x:cherries: Dynamic Array in C
- Functions
- 🟢 15x:cherries: Calculate the Nth term
- 🟢 20x:cherries: Students Marks Sum
- 🟠 50x:cherries: Variadic functions in C
- Structs and Enums
- 🟢 25x:cherries: Boxes through a Tunnel
- 🟠 30x:cherries: Small Triangles, Large Triangles
- Bash
- 🟢 1x:cherries: Let's Echo
- 🟢 1x:cherries: Looping and Skipping
- 🟢 1x:cherries: A Personalized Echo
- 🟢 1x:cherries: Looping with Numbers for loop with range
- 🟢 1x:cherries: The World of Numbers arithmetic expansion
- 🟢 1x:cherries: Comparing Numbers if elseif else
- 🟢 1x:cherries: Getting started with conditionals
- 🟢 1x:cherries: More on Conditionals
- 🟢 1x:cherries: Arithmetic Operations printf and bc -l
- 🟢 1x:cherries: Compute the Average for loop like C++