Algorithms Articles - Page 26 of 41

Comparison of Search Trees in Data Structure

Arnab Chakraborty
Updated on 27-Aug-2019 13:51:07

3K+ Views

Here we will see some search trees and their differences. There are many different search trees. They are different in nature. The basic search tree is Binary Search Tree (BST). Some other search trees are AVL tree, B tree, Red-Black tree, splay tree etc.These trees can be compares based on their operations. We will see the time complexity of these treesSearch TreeAverage CaseInsertDeleteSearchBinary Search TreeO(log n)O(log n)O(log n)AVL treeO(log2 n)O(log2 n)O(log2 n)B TreeO(log n)O(log n)O(log n)Red-Black TreeO(log n)O(log n)O(log n)Splay TreeO(log2 n)O(log2 n)O(log2 n)Search TreeWorst CaseInsertDeleteSearchBinary Search TreeO(n)O(n)O(n)AVL treeO(log2 n)O(log2 n)O(log2 n)B TreeO(log n)O(log n)O(log n)Red-Black TreeO(log n)O(log n)O(log n)Splay ... Read More

Adjacency lists in Data Structures

Arnab Chakraborty
Updated on 27-Aug-2019 13:45:56

4K+ Views

The graph is a non-linear data structures. This represents data using nodes, and their relations using edges. A graph G has two sections. The vertices, and edges. Vertices are represented using set V, and Edges are represented as set E. So the graph notation is G(V, E). Let us see one example to get the idea.In this graph, there are five vertices and five edges. The edges are directed. As an example, if we choose the edge connecting vertices B and D, the source vertex is B and destination is D. So we can move B to D but not ... Read More

Convex Hull Example in Data Structures

Arnab Chakraborty
Updated on 27-Aug-2019 13:34:33

2K+ Views

Here we will see one example on convex hull. Suppose we have a set of points. We have to make a polygon by taking less amount of points, that will cover all given points. In this section we will see the Jarvis March algorithm to get the convex hull.Jarvis March algorithm is used to detect the corner points of a convex hull from a given set of data points.Starting from left most point of the data set, we keep the points in the convex hull by anti-clockwise rotation. From a current point, we can choose the next point by checking ... Read More

Optimal Binary Search Trees in Data Structures

Arnab Chakraborty
Updated on 27-Aug-2019 13:03:53

2K+ Views

A set of integers are given in the sorted order and another array freq to frequency count. Our task is to create a binary search tree with those data to find minimum cost for all searches.An auxiliary array cost[n, n] is created to solve and store the solution of sub problems. Cost matrix will hold the data to solve the problem in bottom up manner.Input − The key values as node and the frequency.Keys = {10, 12, 20} Frequency = {34, 8, 50}Output − The minimum cost is 142.These are possible BST from the given values.For case 1, the cost ... Read More

Binomial Distribution in Data Structures

Arnab Chakraborty
Updated on 27-Aug-2019 12:41:00

499 Views

The Binomial Distribution is a discrete probability distribution Pp(n | N) of obtaining n successes out of N Bernoulli trails (having two possible outcomes labeled by x = 0 and x = 1. The x = 1 is success, and x = 0 is failure. Success occurs with probability p, and failure occurs with probability q as q = 1 – p.) So the binomial distribution can be written as$$P_{p}\lgroup n\:\arrowvert\ N\rgroup=\left(\begin{array}{c}N\ n\end{array}\right) p^{n}\lgroup1-p\rgroup^{N-n}$$Example Live Demo#include #include using namespace std; int main(){    const int nrolls = 10000; // number of rolls    const int nstars = 100; // ... Read More

Bernoulli Distribution in Data Structures

Arnab Chakraborty
Updated on 27-Aug-2019 12:33:29

477 Views

The Bernoulli Distribution is a discrete distribution having two possible outcomes labeled by x = 0 and x = 1. The x = 1 is success, and x = 0 is failure. Success occurs with probability p, and failure occurs with probability q as q = 1 – p. So$$P\lgroup x\rgroup=\begin{cases}1-p\:for & x = 0\p\:for & x = 0\end{cases}$$This can also be written as −$$P\lgroup x\rgroup=p^{n}\lgroup1-p\rgroup^{1-n}$$Example Live Demo#include #include using namespace std; int main(){    const int nrolls=10000;    default_random_engine generator;    bernoulli_distribution distribution(0.7);    int count=0; // count number of trues    for (int i=0; i

Applications of DFS and BFS in Data Structures

Arnab Chakraborty
Updated on 27-Aug-2019 12:25:37

20K+ Views

Here we will see what are the different applications of DFS and BFS algorithms of a graph?The DFS or Depth First Search is used in different places. Some common uses are −If we perform DFS on unweighted graph, then it will create minimum spanning tree for all pair shortest path treeWe can detect cycles in a graph using DFS. If we get one back-edge during BFS, then there must be one cycle.Using DFS we can find path between two given vertices u and v.We can perform topological sorting is used to scheduling jobs from given dependencies among jobs. Topological sorting ... Read More

Level Order Tree Traversal in Data Structures

Arnab Chakraborty
Updated on 27-Aug-2019 11:34:58

573 Views

In this section we will see the level-order traversal technique for binary search tree.Suppose we have one tree like this −The traversal sequence will be like: 10, 5, 16, 8, 15, 20, 23AlgorithmlevelOrderTraverse(root): Begin    define queue que to store nodes    insert root into the que.    while que is not empty, do       item := item present at front position of queue       print the value of item       if left of the item is not null, then          insert left of item into que       end ... Read More

Binary Tree Traversals in Data Structures

Arnab Chakraborty
Updated on 27-Aug-2019 11:23:47

1K+ Views

In this section we will see different traversal algorithms to traverse keys present in binary search tree. These traversals are Inorder traversal, Preorder traversal, Postorder traversal and the level order traversal.Suppose we have one tree like this −The Inorder traversal sequence will be like − 5 8 10 15 16 20 23The Preorder traversal sequence will be like − 10 5 8 16 15 20 23The Postorder traversal sequence will be like − 8 5 15 23 20 16 10The Level-order traversal sequence will be like − 10, 5, 16, 8, 15, 20, 23AlgorithminorderTraverse(root): Begin    if root is not ... Read More

Binary Trees and Properties in Data Structures

Arnab Chakraborty
Updated on 27-Aug-2019 11:04:14

4K+ Views

In this section we will see some important properties of one binary tree data structure. Suppose we have a binary tree like this.Some properties are −The maximum number of nodes at level ‘l’ will be $2^{l-1}$ . Here level is the number of nodes on path from root to the node, including the root itself. We are considering the level of root is 1.Maximum number of nodes present in binary tree of height h is $2^{h}-1$ . Here height is the max number of nodes on root to leaf path. Here we are considering height of a tree with one ... Read More

Advertisements