An open API service indexing awesome lists of open source software.

https://github.com/rajsoni03/data-structure-in-cpp


https://github.com/rajsoni03/data-structure-in-cpp

algorithm cpp data-structures

Last synced: 9 months ago
JSON representation

Awesome Lists containing this project

README

          

# Data Structure in C++

## Array
- Implement Array template class
- Pointer to array
- Implement find, indexAt methods
- Implement Binary Search Algorithm
- Copy Constructor & Copy Assignment
- Move Constructor & Move Assignment
- Operator Overloading
- Use STL Array

## Vector
- Implement Vector Template Class
- Dynemic Memory Management in Heap
- Implement `push_back()` & `push_front()`
- Implement `pop_back()` & `pop_front()`
- Vector Scaling Algorithms
- Increase Capacity by 1
- Increase Capacity by BLOCK_SIZE - 2, 4, 8, 16
- Increase Capacity by Double the Capacity
- Time & Space Complexity
- Use STL Vector

## Linked List
- Implement Singly LinkedList Template Class
- Use nested Node class
- Implement insertion methods
- `push_front()`
- `push_back()`
- `push_at()`
- Implement deletion methods
- `pop_front()`
- `pop_back()`
- `pop_at()`
- `earse()`
- Struct based Implementation of Linked List
- Fetch N th element and overload `operator[]`
- Implement Linear Search
- Reverse the Linked List
- With new Node
- Stack Based
- Inplace with 3 pointers
- Fetch N th element from last of Linked List
- loop detection in singly Linked List
- Using set
- Flyod's Algorithm
- Create Doubly LinkedList Template Class
- Implement `push_front()`, `push_back()` and `push_at()`
- Implement `pop_front()`, `pop_back()` and `pop_at()`

## Tree
- Implementing Binery Tree using Node Class
- Recursive Traversal
- Inorder Traversal
- Preorder Traversal
- Postorder Traversal
- Check if Two Trees Are Same
- Convert to Mirror Tree
- Check if Two Trees Are Mirror
- Iterative Traversal
- Inorder Traversal
- Preorder Traversal
- Postorder Traversal
- Dapth/Hight of The Tree
- Max Depth
- Min Depth
- Flatten Binary Tree to Linked List

## Algorithms
- Recursion
- Print Number Series
- Sum of Numbers
- Factorial of number
- Digit Sum
- Fibonacci Series
- All Pattern Printing

## Dynamic Programming
- 1D DP
- Fibonacci Series
- Frog Jump
- Min Cost Climbing Stairs
- DP on String
- Longest Common Substring

## Design Patterns
- Singletan