LYNX is a fully functional ride-management platform written in C++ that demonstrates how fundamental data structures power real-world software. Every structure—linked lists, queues, stacks, hash tables, AVL trees, heaps, and graphs—is implemented from scratch without the Standard Template Library. The system manages the complete lifecycle of rides, from passenger registration and driver assignment through route calculation and trip history.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/yeremyacuna/LYNX/llms.txt
Use this file to discover all available pages before exploring further.
Introduction
Understand what LYNX is, why it was built without STL, and the problems it solves.
Quickstart
Build and run LYNX on Windows with Visual Studio in a few steps.
Architecture
Explore how data structures, modules, and roles connect to form the full system.
Data Structures
Browse every hand-rolled structure: lists, queues, stacks, trees, heaps, and graphs.
What LYNX Demonstrates
LYNX maps each data structure to a concrete business problem, making it an ideal reference for understanding how theory translates to practice.Queue → Waiting List
Pending trips are managed as a FIFO queue—first requested, first assigned.
DoublyLinkedList → Active Trips
In-progress rides live in a doubly-linked list for fast insertion and removal at any position.
Stack → Trip History
Completed and cancelled trips are pushed onto a LIFO stack for instant last-trip lookup.
Hash Table → Fast Lookups
Passengers and drivers are indexed by DNI for O(1) average-case authentication.
AVL Tree → Range Queries
Trip price and driver rating range searches run in O(log n) via a self-balancing AVL tree.
Graph → City Routing
Cities and road connections form a weighted graph; Dijkstra finds the shortest route.
Explore by Topic
Algorithms
HeapSort, ShellSort, QuickSort, MergeSort, TimSort, CountingSort, and binary search—all implemented without STL algorithms.
System Modules
TripManager, AuthManager, and FileManager coordinate the application’s core logic.
User Roles
Three distinct roles—Passenger, Driver, and Administrator—each with dedicated menus and permissions.
Models
Trip, Passenger, Driver, and Vehicle are the domain objects that flow through every structure.