Articles for category: Data Structures and Algorithms

Deletion in BST

The delete function in a binary search tree removes a specified node, ensuring the binary search tree property is maintained. Three scenarios govern node deletion. This article explores the process of deleting nodes in a binary tree while introducing the fundamentals of what a binary search tree entails. To learn more about the Binary search ...

Delete a Node without Head Pointer

Problem Statement You are given a singly linked list and the reference to the node to be deleted in the linked list, write a program to delete that node from linked list. There is no information provided about the head pointer or any other node. The normal deletion would fail here as the linked list we ...

kth Largest Element in BST

Problem Statement We are provided with a Binary Search tree and the task is to find the $k^{th}$ largest element in BST (Binary Search Tree). Refer to the Example and Example Explanation sections for more details and the Approach section to understand how to find the $k^{th}$ largest element in bst. Example Example 1: The ...

Parenthesis Checker

Problem Statement A string expression of parenthesis with the letters "(", ")", "{", "}", "[", "]" is supplied to you. The expression is called balanced with respect to the parenthesis ifthe same type of closing brackets )", "}", "]" is used to close open brackets "(", "{", "[". The correct sequence in which they appear ...

Boundary Traversal of Binary Tree

Problem Statement A binary tree will be given in the problem and we need to find the boundary traversal of that binary tree.Boundary traversal of a binary tree means traversing the binary tree along the boundary. The boundary includes the left boundary, right boundary and leaf nodes. Therefore in the boundary traversal of binary trees ...

Next Greater Element

Problem Statement We are given an array of integers, and we need to find the next greater element of every array elements. So, we need to find and print the next greater element of every array element. Note: Refer to the Example and Example Explanation sections for more details and the Approach section to understand how to find the next greater ...

Find the Middle Element in Linked List

Problem Statement You are given the head of a linked list, write a program to Find middle element in linked list. When there are even number of nodes in linked list, then there would be two middle nodes, return the second middle node. Example Input-1 Output-1 Explanation Here, 3 is the middle node of the ...

Leaders in an Array

Problem Statement Given an array arr of size n with all unique elements. Print all Leaders in the array in any order. Note: A leader is an element of the array if it is greater than all the elements to its right side in the array. The rightmost element is always a leader in an ...

Maximum Sum Increasing Subsequence

Problem Statement An array of positive integers of size n is given. write a program to find the maximum sum increasing subsequence in the given array. The maximum sum increasing subsequence is a subsequence of an integer array where the sum is maximum and all of the elements are sorted in non decreasing order. Example ...