Linked list
An ordered sequence of elements stored in separate nodes connected by links or references rather than in one contiguous storage region.
Grokking Data Structures
A linked list is a collection of nodes connected by links, allowing elements to be inserted or removed without requiring contiguous storage.
- How it is used
- Uses linked lists as growable alternatives to arrays and as underlying storage for containers such as bags and stacks.
- How deep it goes
- Works through node-based Python implementation, insertion, deletion, traversal costs, and singly, doubly, and circular variants.
- Examples
- Uses customer orders, a sorted-order insertion exercise, and Python node and container classes.
- What you can do after
- Build it from scratch in Python and choose a list variant by traversal direction, operation cost, and memory needs.
Grokking Algorithms, Second Edition
A linked list is an ordered data structure whose items store links to the addresses of subsequent items rather than occupying adjacent memory locations.
- How it is used
- Helps choose between linked lists and arrays for storing and changing an ordered collection.
- How deep it goes
- Explains address links, traversal, insertion, deletion, and performance trade-offs without giving a full implementation.
- Examples
- Uses a to-do list, a treasure hunt, and movie seating to make memory placement and links concrete.
- What you can do after
- Evaluate/understand when easy insertion and deletion outweigh slow access by position and per-item pointer costs.
Read how Grokking Algorithms, Second Edition explains linked list →
Fabulous Adventures in Data Structures and Algorithms
A linked list is a sequence of nodes in which each node refers to the next node in the sequence.
- How it is used
- Uses an immutable linked list to examine reversal, performance analysis, and the design of an immutable stack.
- How deep it goes
- Builds a C# implementation, analyzes operation costs and generated equality, then replaces its error-prone empty representation in a stack.
- Examples
- Demonstrates reversal with five integers and shows stack branches that share an existing tail.
- What you can do after
- Build it from scratch as an immutable list, reverse it in linear time, and refine the representation for an immutable stack.
Read how Fabulous Adventures in Data Structures and Algorithms explains linked list →
Julia as a Second Language
A linked list is a collection data structure whose elements are connected through links rather than stored in one contiguous indexed sequence.
- How it is used
- Uses linked rocket stages to compare collection tradeoffs and motivate custom Julia collection interfaces.
- How deep it goes
- Works through indexed traversal, chain termination, and front insertion and removal, without developing a general-purpose linked-list library.
- Examples
- Builds a chain of rocket stages and demonstrates indexed lookup plus `pushfirst!` and `popfirst!` operations.
- What you can do after
- Build it from scratch as linked Julia stages, then extend collection operations and choose it when fast front changes matter.
Go in Action, Second Edition
A linked list is a sequence data structure whose elements are stored in nodes connected by links and whose element type can be parameterized in its generic form.
- How it is used
- Uses a linked list to develop a reusable, type-safe Go collection and demonstrate type parameters across nodes, structs, and methods.
- How deep it goes
- Works through nodes, interface methods, traversal, pointer updates, and bounds checks; treats production use as uncommon beside slices.
- Examples
- Demonstrates an integer list with Add, Insert, Get, Set, and RemoveAt, plus a generic list-reversal function.
- What you can do after
- Build it from scratch as a typed Go collection with linked nodes, indexed operations, and a generic interface.
Read how Go in Action, Second Edition explains linked list →
Functional Programming in Scala, Second Edition
A singly linked list is a sequence represented by nodes in which each nonempty node contains an element and a reference to the remaining list.
- How it is used
- Uses immutable lists to develop pure functions, algebraic data types, pattern matching, recursion, and structural sharing.
- How deep it goes
- Defines Nil and Cons, implements construction and recursive operations, and explains sharing costs; it defers alternative sequence structures.
- Examples
- Uses Nil, Cons, List(1,2,3,4), append, drop, dropWhile, and the init exercise to demonstrate construction and traversal.
- What you can do after
- Build it from scratch in Scala, construct immutable lists, pattern-match over them, and implement recursive list functions.
Read how Functional Programming in Scala, Second Edition explains linked list →
AI-Powered Developer: Build software with ChatGPT and Copilot
A linear data structure whose elements are connected through links or references to other elements.
- How it is used
- Uses linked lists as a realistic coding task for prompting, generating, explaining, and reviewing AI-assisted implementations.
- How deep it goes
- Explains nodes, links, core operations, Python structure, traversal, and in-place reversal, while emphasizing review rather than exhaustive implementation analysis.
- Examples
- Demonstrates Python classes, append and prepend operations, traversal output, pseudocode, and iterative reversal of links.
- What you can do after
- Builds and reviews a singly linked list in Python, including basic operations and an explicitly mutating reverse method.
Read how AI-Powered Developer: Build software with ChatGPT and Copilot explains linked list →
Elixir in Action, Third Edition
A singly linked list is a sequence of nodes in which each node refers to the next node and traversal proceeds in one direction.
- How it is used
- Uses singly linked lists for dynamic, variable-sized collections and sequential traversal.
- How deep it goes
- Explains recursive representation, construction, traversal costs, and operation trade-offs, while deferring detailed List-module reference.
- Examples
- Demonstrates prime-number lists, indexed access, membership, replacement, insertion, concatenation, and head-tail decomposition.
- What you can do after
- Apply it via List and Enum operations while recognizing when sequential access makes another data structure more suitable.
Read how Elixir in Action, Third Edition explains linked list →
Related concepts
- doubly linked listincludes · A doubly linked list is a linked sequence in which each node has references to both its predecessor and successor.
- listincludes · A list is an ordered collection of elements arranged in a sequence.
- containerkind of · A container is a structure or entity that holds, groups, or packages other data or elements.
- data localitycontrasts with · Data locality describes the relationship between where data is located and where or how it is accessed or processed, including proximity, reuse, and location constraints.
- sequential accessuses · Sequential access is a data-access pattern that retrieves elements or records in an ordered sequence, typically beginning at the first element or location.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.







