M&T
Term | One-Sentence Definition |
|---|---|
Array | A contiguous collection of elements stored at fixed indices for fast random access. |
Linked List | A sequence of nodes where each node points to the next, enabling dynamic memory allocation. |
Stack | A Last-In-First-Out (LIFO) data structure used for undo operations and function calls. |
Queue | A First-In-First-Out (FIFO) data structure used for scheduling and buffering tasks. |
Deque | A double-ended queue allowing insertion and removal from both ends. |
Hash Map / Hash Table | A structure storing key-value pairs with near-constant-time lookups using hashing. |
Set | A collection of unique, unordered elements that supports fast membership tests. |
Tree | A hierarchical structure of nodes with one root and child nodes. |
Binary Tree | A tree where each node has at most two children. |
Binary Search Tree (BST) | A binary tree that maintains sorted order for efficient O(log n) lookups. |
Heap (Priority Queue) | A complete binary tree used to quickly access the smallest or largest element. |
Graph | A network of nodes (vertices) connected by edges representing relationships. |
Adjacency Matrix | A 2D array representation of graph edges. |
Adjacency List | A dictionary-like mapping from each vertex to its list of connected neighbors. |
Trie (Prefix Tree) | A tree optimized for prefix-based string searching. |
Hash Function | Converts input data into a fixed-size hash key for quick lookups. |
Collision (in Hashing) | When two keys produce the same hash value, requiring a resolution strategy. |
Load Factor | A measure of how full a hash table is before resizing. |
Term | One-Sentence Definition |
|---|---|
Algorithm | A step-by-step procedure for solving a computational problem. |
Big-O Notation | Describes the worst-case time or space complexity growth rate of an algorithm. |
Time Complexity | The measure of how an algorithm’s runtime increases with input size. |
Space Complexity | The measure of memory an algorithm requires relative to input size. |
Linear Search | Scanning each element sequentially to find a match (O(n)). |
Binary Search | Recursively dividing a sorted array to find a target in O(log n) time. |
Recursion | A function that calls itself to solve smaller subproblems. |
Iteration | Repeated execution of a set of statements using loops. |
Sorting Algorithm | A method for ordering elements in a list or array. |
Bubble Sort | Repeatedly swapping adjacent out-of-order elements (O(n²)). |
Insertion Sort | Gradually building a sorted portion by inserting elements in order (O(n²)). |
Merge Sort | Divide-and-conquer sorting algorithm with O(n log n) complexity and stability. |
Quick Sort | Partition-based sorting algorithm with O(n log n) average complexity. |
Heap Sort | Sorting algorithm using a heap structure for O(n log n) performance. |
Dynamic Programming (DP) | Breaking problems into overlapping subproblems and caching results. |
Greedy Algorithm | Builds a solution step-by-step by choosing the locally optimal option. |
Breadth-First Search (BFS) | Traverses a graph level by level using a queue. |
Depth-First Search (DFS) | Traverses a graph by exploring one branch fully before backtracking. |
Term | One-Sentence Definition |
|---|---|
Frontend | The part of an application that users interact with directly (UI). |
Backend | The server side of an application handling logic, data, and APIs. |
Full Stack | Working across both frontend and backend layers of an application. |
RESTful API | API architecture that uses standard HTTP methods (GET, POST, PUT, DELETE) to manage resources. |
GraphQL | A query language that lets clients request exactly the data they need from a single endpoint. |
Containerization | Packaging software and its dependencies to run consistently across environments. |
Docker | A containerization platform that isolates applications for consistent deployment. |
Cloud Computing | Delivering computing resources (storage, servers, databases) over the internet. |
Term | One-Sentence Definition |
|---|---|
Database | A structured collection of data that can be accessed and managed electronically. |
SQL (Structured Query Language) | A language for storing, retrieving, and managing data in relational databases. |
Term | One-Sentence Definition |
|---|---|
Python | A high-level, interpreted language known for readability and versatility in data science and web development. |
Java | An object-oriented, platform-independent language widely used in enterprise systems. |
JavaScript (JS) | A lightweight scripting language that powers interactivity on the web. |
TypeScript | A superset of JavaScript adding static typing for safer and scalable code. |
React.js | A JavaScript library for building reusable UI components. |
Node.js | A JavaScript runtime for building scalable backend servers. |
Express.js | A minimalist web framework for building REST APIs on Node.js. |
Spring Boot | A Java framework for quickly building production-ready web applications. |
Redux | A predictable state management library for JavaScript applications. |
Streamlit | A Python framework for building interactive data-driven web apps. |
Plotly | A graphing library for creating interactive, web-based data visualizations. |
Matplotlib | A Python library for creating static 2D plots and charts. |
Seaborn | A Python visualization library built on Matplotlib for statistical graphics. |
Pandas | A Python library for data manipulation and analysis using DataFrames. |
scikit-learn | A Python library offering tools for machine learning and data preprocessing. |
PyTorch | A deep learning framework using dynamic computational graphs for neural networks. |
OpenAI API | Cloud-based endpoints providing access to large language and image models. |