{"id":18535136,"url":"https://github.com/maximlevchenko/cpp-projects","last_synced_at":"2025-09-17T16:21:56.536Z","repository":{"id":252425182,"uuid":"840382022","full_name":"MaximLevchenko/CPP-Projects","owner":"MaximLevchenko","description":"This repository features my university projects, where I applied concepts like algorithms, data structures, dynamic programming, automata theory, grammars, multithreading, and concurrent programming in C++.","archived":false,"fork":false,"pushed_at":"2024-09-01T10:42:15.000Z","size":21057,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-01T00:11:55.546Z","etag":null,"topics":["abstraction","automata-theory","avl-tree","bfs-algorithm","dynamic-programming","multithreading","oop-principles"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MaximLevchenko.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-08-09T15:20:42.000Z","updated_at":"2024-09-01T10:43:36.000Z","dependencies_parsed_at":"2024-08-28T22:47:21.335Z","dependency_job_id":"8ba47d2b-a98d-4873-8a46-26f734f0616d","html_url":"https://github.com/MaximLevchenko/CPP-Projects","commit_stats":null,"previous_names":["maximlevchenko/cpp-projects"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MaximLevchenko/CPP-Projects","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaximLevchenko%2FCPP-Projects","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaximLevchenko%2FCPP-Projects/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaximLevchenko%2FCPP-Projects/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaximLevchenko%2FCPP-Projects/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MaximLevchenko","download_url":"https://codeload.github.com/MaximLevchenko/CPP-Projects/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MaximLevchenko%2FCPP-Projects/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275623419,"owners_count":25498335,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-17T02:00:09.119Z","response_time":84,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["abstraction","automata-theory","avl-tree","bfs-algorithm","dynamic-programming","multithreading","oop-principles"],"created_at":"2024-11-06T19:20:14.578Z","updated_at":"2025-09-17T16:21:56.473Z","avatar_url":"https://github.com/MaximLevchenko.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# University C++ Projects Repository\n\nThis repository contains various C++ projects developed during my university coursework. Each project demonstrates different aspects of C++ programming, including data structures, algorithms, multithreading, automata theory, cryptography, and more.\n\n## Table of Contents\n\n1. [AVL Tree: Bestsellers Tracker](#avl-tree-bestsellers-tracker)\n2. [BFS Pathfinding with Items Collection](#bfs-pathfinding-with-items-collection)\n3. [Cpp Course Projects](#cpp-course-projects)\n4. [Cryptography Projects](#cryptography-projects)\n5. [Dynamic Programming: Christmas Tree Gift Collection Problem](#dynamic-programming-christmas-tree-gift-collection-problem)\n6. [Finite Automata Operations](#finite-automata-operations)\n7. [Multithreaded Problem Solver for Rental Optimization](#multithreaded-problem-solver-for-rental-optimization)\n8. [Robot Control Server](#robot-control-server)\n\n## AVL Tree: Bestsellers Tracker\n\nThis project implements a Bestsellers tracker using an AVL tree to maintain a list of products and their sales counts. The AVL tree ensures efficient insertion, deletion, and rank queries.\n\n### Features\n- Efficient insertion, deletion, and lookup with O(log n) complexity.\n- Functions to query product ranks and sales statistics.\n\n## BFS Pathfinding with Items Collection\n\nThis project uses a breadth-first search (BFS) algorithm to find the shortest path in a graph while collecting specific items.\n\n### Features\n- Implements BFS with bitmasking for efficient item collection.\n- Finds the shortest path while ensuring all required items are collected.\n\n## Cpp Course Projects\n\nA collection of smaller C++ projects, each demonstrating different concepts such as data structures, algorithms, and system simulations.\n\n### Projects Included\n\n1. **Big Numbers**:\n    - Implements a `CBigInt` class to handle arbitrarily large integers.\n    - Supports standard arithmetic operations, comparisons, and input/output.\n\n2. **Computer Network System**:\n    - Simulates networks, computers, and their components in C++.\n    - Allows users to create, modify, and display various hardware components within a simulated environment.\n\n3. **Data Types Simulation**:\n    - Provides a set of C++ classes to simulate common data types (`int`, `double`, `enum`, and `struct`).\n    - Mimics how a compiler might handle these types internally, offering functionalities like size retrieval and equality checking.\n\n4. **KMP Search System**:\n    - Implements the Knuth-Morris-Pratt (KMP) algorithm for efficient substring search.\n    - Designed to find patterns within a text using the KMP string-matching algorithm.\n\n5. **Student Database Simulator**:\n    - Implements a student management system for a university's study department.\n    - Allows for the addition, deletion, and searching of student records, with capabilities for filtering and sorting based on various criteria.\n\n6. **Subsequence Detection**:\n    - Detects repeated subsequences within a sequence.\n    - Useful for applications such as data compression or plagiarism detection.\n\n7. **Supermarket Management Simulation**:\n    - Provides a C++ class to manage inventory in a supermarket setting.\n    - Includes functionalities to store products with expiration dates, process shopping lists, and find expired products.\n\n## Cryptography Projects\n\nThis repository contains projects focused on cryptographic operations, such as hashing and encryption/decryption using the AES algorithm.\n\n### Projects Included\n- **Encryption-Modes**: Demonstrates file encryption using various AES modes.\n- **Hashing**: Generates and verifies cryptographic hashes using OpenSSL.\n\n## Dynamic Programming: Christmas Tree Gift Collection Problem\n\nSolves the Christmas Tree Gift Collection problem using recursive and iterative approaches to maximize gifts collected from a set of connected trees.\n\n### Features\n- Recursive and iterative solutions for the gift collection problem.\n- Compares the efficiency and memory usage of both approaches.\n\n## Finite Automata Operations\n\nImplements operations on Non-deterministic Finite Automata (NFA) and Deterministic Finite Automata (DFA), including determinization, minimization, and intersection/unification.\n\n### Features\n- Functions for creating, determinizing, and minimizing automata.\n- Supports intersection and union operations.\n\n## Multithreaded Problem Solver for Rental Optimization\n\nA multithreaded application that optimizes the handling of rental requests for a company, ensuring maximum profit and efficient resource use.\n\n### Features\n- Uses multithreading to process rental requests concurrently.\n- Synchronizes thread operations to ensure correct processing order.\n\n## Robot Control Server\n\nAn autonomous robot control server that manages a fleet of robots remotely. The server guides robots to a target location, handling communication and error situations.\n\n### Features\n- Multithreaded server using a custom communication protocol.\n- Handles authentication, robot movement, and error conditions.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaximlevchenko%2Fcpp-projects","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaximlevchenko%2Fcpp-projects","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaximlevchenko%2Fcpp-projects/lists"}