Found 1919 Articles for Data Structure

XOR Linked List – A Memory Efficient Doubly Linked List

Divya Sahni
Updated on 03-Nov-2023 15:28:07

808 Views

Linked List The linked list is a linear data structure containing elements called nodes. Each node consists of two main components: data (payload of that node) and a pointer to the next node in the list. They are simple and efficient to use providing easy allocation and deallocation of memory. Doubly Linked List Doubly linked list is a special type of linked list which again consists of a basic element called nodes. Each node consists of three main components: data (payload of that node), a pointer to the previous node of the sequence and a pointer to the next ... Read More

Sort numbers stored on different machines

Divya Sahni
Updated on 03-Nov-2023 15:12:14

280 Views

In today’s world with a large amount of data and interconnected systems, a vast amount of data is created and stored across various machines. One challenging challenge is to sort this data stored across multiple devices. Sorting being a fundamental operation in computations is used for optimal retrieval, search and analysis of data. But with distributed systems and various interconnected machines, this task of sorting becomes difficult and important. Problem Statement Given an array containing N linked lists that depict N different machines. Each of these linked lists contains some variable number of numbers in sorted order. The task is ... Read More

Segment Tree | Sum of a given range

Divya Sahni
Updated on 03-Nov-2023 15:10:40

166 Views

Segment Tree A segment tree is a tree data structure used for storing intervals and segments. It is a static structure, i.e. it cannot be modified once it is built. Segment trees are used to handle range queries on an array or a similar linear data structure. In a segment tree, we divide an input array into segments and precompute the values for these segments. Each node in a segment tree depicts an interval or segment of the array. The root node represents the entire array and each child node represents the segments formed by dividing the parent node. This division leads ... Read More

Segment Tree | Range Minimum Query

Divya Sahni
Updated on 03-Nov-2023 15:06:10

181 Views

Segment Tree − A segment tree is a tree data structure used for storing intervals and segments. It is a static structure, i.e. it cannot be modified once it is built. Segment trees are used to handle range queries on an array or a similar linear data structure. In a segment tree, we divide an input array into segments and precompute the values for these segments. Each node in a segment tree depicts an interval or segment of the array. The root node represents the entire array and each child node represents the segments formed by dividing the parent node. This ... Read More

Print unique rows in a given Binary matrix

Divya Sahni
Updated on 03-Nov-2023 15:01:03

159 Views

In computer science, binary matrix holds a very strong position containing a lot of information as the data is depicted using 0’s and 1’s which is the language of computers. In binary matrix, unique row refers to a row that is not identical to any other row in the matrix. Each unique row contains unique information that is not present anywhere else in the matrix except the row itself. Discovering these unique rows give information about relationships between rows, patterns in the matrix and identification of critical elements. Problem Statement Given a binary matrix mat[] containing 0’s and 1’s. The ... Read More

Pattern Searching using Suffix Tree

Divya Sahni
Updated on 03-Nov-2023 14:57:58

185 Views

Trie − A trie is a tree-based data structure used to store and retrieve a dynamic set of strings. Compressed Trie − A compressed trie is a variation of the trie data structure used for storing and searching dynamic sets of strings. Memory usage is minimised by sharing common prefixes. In a compressed trie, nodes with only one child are merged with their parent nodes compressing the common prefixes into a single edge. Suffix Tree − A suffix tree is a data structure used in string processing to store and search for all suffixes of a given string. It represents all possible suffixes ... Read More

Given a sequence of words, print all anagrams together

Divya Sahni
Updated on 03-Nov-2023 14:52:20

160 Views

Anagrams − An anagram is a word or a phrase formed by rearranging the alphabets of another word or phrase, usually once. Some examples of anagrams are given below − Top - Pot Silent - Listen Post - Stop Dog - God Problem Statement Given an array of words arr[]. For the given array print all the anagrams together. Sample Example 1 Input arr[] = {“star”, “god”, “vile”, “save”, “evil”, “care”, “arts”, “race”, “dog”, “vase”} Output arts star care race dog god evil vile save vase ... Read More

Find the interval which contains the maximum number of concurrent meetings

Divya Sahni
Updated on 03-Nov-2023 14:49:01

91 Views

Given a scenario of a company where meetings are held during fixed time slots. These slots might be overlapping or distant. Thus, optimizing meeting efficiency is important in order to accommodate maximum meetings without any conflicts between schedules. In the problem given, we’ll be going through such an optimizing meeting efficiency problem. Problem Statement Given a two-dimensional array time[][] containing the start time and end time of all the meetings that are scheduled for that day. The task is to find the time interval when most of the meetings are occurring. Sample Example 1 Input: time[][] = {{1, 5}, {2, 6}, {3, 7}, {4, ... Read More

Design an efficient data structure for given operations

Divya Sahni
Updated on 03-Nov-2023 14:45:34

94 Views

In order to design efficient data structures for specific operations, the time and space complexity of the given operations for the data structure created is important. Looking into some basic operations and how they can be efficiently optimized − insert() − Inserts an element to the data structure Dynamic Arrays, Hash Tables, Binary Search Trees and Balanced Search Trees like AVL Trees or Red-Black Trees are the most efficient choice of data structures providing O(1) complexity for insertions operation. delete() − Deletes an element from the data structure Hash tables approach the deletion process in O(1) time while Binary Search Trees and Balanced Search ... Read More

Maximum level sum in N-ary Tree

Divya Sahni
Updated on 03-Nov-2023 14:39:39

124 Views

The N-ary tree is a tree data structure where each node can have a maximum of N children where N is a positive integer (N >= 0). N-ary trees are used in many applications like file systems, organizational charts and syntax trees in programming languages. Example of N-ary tree with N = 4. A / / \ \ B C D E / | \ ... Read More

1 2 3 4 5 ... 192 Next
Advertisements