Which Data Structure Does Not Allow Random Access?


Angela Bailey

Which Data Structure Does Not Allow Random Access?

When it comes to storing and accessing data, different data structures have different characteristics. One important characteristic is whether a data structure allows random access or not. Random access refers to the ability to directly access any element in the structure, regardless of its position.

In this article, we will explore various data structures and identify the one that does not allow random access.


Arrays are one of the simplest and most commonly used data structures. They consist of a contiguous block of memory where elements are stored.

Each element in an array can be accessed using its index, which allows for random access. For example, in an array called myArray, myArray[0] refers to the first element, myArray[1] refers to the second element, and so on.

Linked Lists

Linked lists, on the other hand, do not allow for random access. A linked list consists of nodes where each node contains a value and a reference (or pointer) to the next node in the list.

To access an element in a linked list, you have to start from the head (the first node) and traverse through each subsequent node until you reach the desired position. This sequential traversal makes linked lists inefficient for random access.

Stacks and Queues

Stacks and queues, both based on linked lists or arrays, also do not support random access. Stacks follow a Last-In-First-Out (LIFO) principle where elements are added or removed from only one end called the top.

Queues, on the other hand, follow a First-In-First-Out (FIFO) principle where elements are added at one end called the rear and removed from the other end called the front. In both cases, accessing elements in arbitrary positions is not allowed.


Trees, including binary trees and their variants, also do not provide random access. In a tree, each node can have multiple child nodes.

To access an element in a tree, you have to traverse from the root node to the desired node by following specific paths such as left or right child nodes. This hierarchical structure restricts random access as the traversal path depends on the structure of the tree.


In conclusion, while arrays allow for random access by directly accessing elements using their indices, data structures like linked lists, stacks, queues, and trees do not provide this capability. These structures require sequential traversal or hierarchical exploration to access specific elements. When choosing a data structure for your program or application, it’s important to consider whether random access is necessary and select an appropriate data structure accordingly.

Discord Server - Web Server - Private Server - DNS Server - Object-Oriented Programming - Scripting - Data Types - Data Structures

Privacy Policy