Found 216 Articles for Analysis of Algorithms

Binary Tree ADT in Data Structure

Arnab Chakraborty
Updated on 08-Jan-2020 11:26:15

6K+ Views

Basic conceptA binary tree is defined as a tree in which no node can have more than two children. The highest degree of any node is two. This indicates that the degree of a binary tree is either zero or one or two.In the above fig., the binary tree consists of a root and two sub trees TreeLeft & TreeRight. All nodes to the left of the binary tree are denoted as left subtrees and all nodes to the right of a binary tree are referred to as right subtrees.ImplementationA binary tree has maximum two children; we can assign direct ... Read More

ADT-array Representation in Data Structure

Arnab Chakraborty
Updated on 08-Jan-2020 11:23:37

6K+ Views

Basic conceptADT indicates for Abstract Data Type.Arrays are defined as ADT’s because they are capable of holding contiguous elements in the same order. And they permitaccess for the specific element via index or position.They are abstract because they can be String, int or Personint[] arrA = new int[1]; String[] arrB = new String[1]; Person[] arrC = new Person[3]; // where Person is treated as a defined classAdvantagesFast, random access of items or elements.Very memory efficient, very little memory is needed other than that needed to store the contents.DisadvantagesSlow insertion and deletion of elementsArray size must be known when the array ... Read More

Time and Space Complexity in Data Structure

Arnab Chakraborty
Updated on 01-Nov-2023 01:51:07

40K+ Views

Algorithm AnalysisAnalysis of efficiency of an algorithm can be performed at two different stages, before implementation and after implementation, asA priori analysis − This is defined as theoretical analysis of an algorithm. Efficiency of algorithm is measured by assuming that all other factors e.g. speed of processor, are constant and have no effect on implementation.A posterior analysis − This is defined as empirical analysis of an algorithm. The chosen algorithm is implemented using programming language. Next the chosen algorithm is executed on target computer machine. In this analysis, actual statistics like running time and space needed are collected.Algorithm analysis is ... Read More

Algorithm Specification-Introduction in Data Structure

Arnab Chakraborty
Updated on 08-Jan-2020 11:11:31

19K+ Views

An algorithm is defined as a finite set of instructions that, if followed, performs a particular task. All algorithms must satisfy the following criteriaInput. An algorithm has zero or more inputs, taken or collected from a specified set of objects.Output. An algorithm has one or more outputs having a specific relation to the inputs.Definiteness. Each step must be clearly defined; Each instruction must be clear and unambiguous.Finiteness. The algorithm must always finish or terminate after a finite number of steps.Effectiveness. All operations to be accomplished must be sufficiently basic that they can be done exactly and in finite length.We can ... Read More

Data objects and Structures

Arnab Chakraborty
Updated on 08-Jan-2020 11:08:19

2K+ Views

Basic conceptData structures are defined as special classes implemented to hold data only, i.e. Pure models, e.g. Car, Kid, Animal, Event, Employee, Company, Customer ...etc. Those data are generally declared or considered as instance variables in other classes beginnings.The methods of this class should not perform any real significant work, otherwise the data structure class is not a data structure anymore!So mainly, the methods are getters and setters (i.e. accessors and mutators), generally because the instance variables are treated as private. There is alternative opinion: that Data structure variables should be public, and can be accessed directly from the instance ... Read More

Kinetic Data Structures

Arnab Chakraborty
Updated on 08-Jan-2020 11:02:46

422 Views

Basic conceptA kinetic data structure is defined as a data structure implemented to track an attribute of a geometric system that is moving continuously. For example, a kinetic convex hull data structure tracks the convex hull of a group of n moving points.The development of kinetic data structures was inspired by computational geometry problems involving physical objects in continuous motion, for example collision or visibility detection in robotics, animation or computer graphics.OverviewKinetic data structures are implemented on systems where there is a set of values that are changing as a function of time, in a called fashion. So the system ... Read More

Hilbert Tree in Data Structure

Arnab Chakraborty
Updated on 08-Jan-2020 11:00:51

425 Views

Hilbert R-tree, an R-tree variant, is defined as an index for multidimensional objects such as lines, regions, 3-D objects, or high-dimensional feature-based parametric objects. It can be imagined as an extension to B+-tree for multidimensional objects.R-trees' performance depends on the quality of the algorithm that clusters the data rectangles on a node. Hilbert R-trees implement space-filling curves, and specifically the Hilbert curve, for imposing a linear ordering on the data rectangles.Hilbert R-trees are of two types: one for static databases, and one for dynamic databases. In both cases Hilbert space-filling curves are implemented to achieve better ordering of multidimensional objects ... Read More

R* Tree in Data Structure

Arnab Chakraborty
Updated on 08-Jan-2020 10:58:06

381 Views

Basic conceptIn case of data processing, R*-trees are defined as a variant of R-trees implemented for indexing spatial information.R*-trees have slightly larger construction cost than standard R-trees, as the data may require to be reinserted; but the resulting tree will generally have a better query performance. Same as the standard R-tree, it can store both point and spatial data. Concept of R*-tree was proposed by Norbert Beckmann, Hans-Peter Kriegel, Ralf Schneider, and Bernhard Seeger in 1990.Difference between R*-trees and R-treesR*-Tree is constructed by repeated insertion. There is little (i.e. almost no) overlap in this tree, resulting in good query performance. ... Read More

Converting B-Reps to Trees in Data Structure

Arnab Chakraborty
Updated on 08-Jan-2020 10:55:30

66 Views

1 B-rep StreamsIt is clearly stated to set up a producer process importing a B-rep, externally defined by some standard polygonal format, e.g. either a wave front or java3D obj file, into an input stream for our geometric pipeline. The boundary representation provided by polygons and normal must be coherently oriented. A filtering of the input file to cope with nonplanar polygons and other geometric inaccuracies may be required for generally archived geometric models implemented primarily in computer graphics. The output stream of coherently-oriented triangles, is then transformed into our twin progressive-BSP (Binary Search Partitioning) trees by the algorithmic steps ... Read More

BSP Trees as a Multi-Dimensional Search Structure

Arnab Chakraborty
Updated on 08-Jan-2020 10:50:45

106 Views

Spatial search structures are based on the same ideas that were invented in Computer Science during the 60's and 70's for solving the problem of quickly processing large sets of symbolic data, as opposed to geometric data, for example lists of people's names. It was invented that by first sorting a list of names according to alphabet, and storing the sorted list in an array, one can compute whether some new name is already in the list in log2n operations using a binary search algorithm, rather than n/2 expected operations required with the help of a sequential search. This is ... Read More

Advertisements