Reading Notes Class #5
VOCABULARY DEFINITIONS
>- Singly Linked List:
* Node: a basic unit of a singly linked list that contains a value and a reference to the next node in the list
* Head: the first node in a singly linked list
* Tail: the last node in a singly linked list
* Pointer: a reference to another object or data structure
* Traversal: the process of accessing each node in a singly linked list in order
* Insertion: the process of adding a new node to a singly linked list
* Deletion: the process of removing a node from a singly linked list
* Search: the process of finding a specific value in a singly linked list
* Linked List: a data structure consisting of a sequence of nodes that each contain a value and a reference to the next node in the sequence
* Singly Linked List: a type of linked list where each node has a reference to the next node, but not the previous node
* Doubly Linked List: a type of linked list where each node has references to both the next node and the previous node
* Circular Linked List: a type of linked list where the last node points to the first node, forming a circular loop
* Memory Allocation: the process of reserving memory for a data structure or object
* Garbage Collection: the process of freeing memory that is no longer being used by a program
* Time Complexity: the amount of time an algorithm takes to run relative to the size of the input
* Space Complexity: the amount of memory an algorithm uses relative to the size of the input
>
- Big O Notation:
* Algorithm: a sequence of steps used to solve a problem or perform a task
* Time Complexity: the amount of time an algorithm takes to run relative to the size of the input
* Space Complexity: the amount of memory an algorithm uses relative to the size of the input
* Big O Notation: a mathematical notation used to describe the upper bound of an algorithm's time or space complexity
* O(1): constant time complexity, where the time required by the algorithm does not change with the size of the input
* O(n): linear time complexity, where the time required by the algorithm increases linearly with the size of the input
* O(n^2): quadratic time complexity, where the time required by the algorithm increases exponentially with the size of the input
</ol>
[HOME](/reading-notes/)