This repository showcases my university projects where I applied knowledge of algorithms, data structures, dynamic programming, and the theory of automata and grammars in C++. 💻
- In-depth Algorithm Analysis: 🔬
- Mastered the analysis of algorithm complexity. ⏱
- Developed the ability to select optimal algorithms for different tasks. 🧠
- Data Structure Expertise: 🗃
- Studied a wide range of data structures and their applications.
- Implemented structures efficiently for performance gains. 🛠
- Dynamic Programming Mastery: 🔁
- Grasped DP principles and problem-solving techniques. 🏆
- Automata and Grammar Theory: 🧠
- Learned about finite automata, regular expressions, and grammars. 🤖
- Understood their applications in text processing, data compression, and parsing. ⌨️
- Complex Data Structure Knowledge: 🌐
- Acquired proficiency in handling complex data structures such as trees, graphs, and hash maps.
- Search Algorithm Expertise: 🔍
- Explored various search algorithms, including depth-first search (DFS), breadth-first search (BFS), Dijkstra algorithm, greedy algorithms, etc. 🗺️
- Sorting Algorithm Mastery: 🔄
- Demonstrated expertise in implementing and understanding sorting algorithms like QuickSort, MergeSort, HeapSort, TopSort, etc. ⚙️
- Problem Decomposition: 🧐
- Breaking down problems into smaller, solvable subproblems.
- Code Optimization: 🚀
- Enhancing code efficiency and minimizing time complexity.
- Ideal Data Structure Selection: 🗃
- Evaluating and choosing the most suitable structures based on the task.
- Dynamic Programming Approach: 🔁
- Solving problems with overlapping subproblems for optimal outcomes.
- Automata and Grammar Applications: 🔍
- Utilizing theory for text processing, data compression, and compilation.
- Folders: 📁
- Each folder represents an individual project.
- Files: 💾
... .cpp
: Source code implementations.README.md
: Detailed project descriptions.