Solution to a problem requires a proper sequence of steps with well defined unambiguous actions. To solve a problem using computers, these set of actions need to be transformed into precise instructions using a suitable computer language. These set of precise instructions is referred as a program. Developing a program to solve a simple problem is a straight forward task. But developing a program f ......

In this section, we present classification of different data structures. Data structures are classified at multiple levels. At the first level they are classified as primitive or non-primitive depending on whether the storage structure contains a single data item or a collection of data items respectively. If it is non-primitive, it is further classified as linear or non-linear depending on the na ......

Primitive data types are one which can be operated upon by machine level instructions. These are indivisible units treated as atomic values in the storage structure. The following sections describe the various primitive data types and their representations supported by most of the programming languages.

Non primitive data structures are one which cannot be operated upon directly by machine level instructions as whole. These are non atomic or collection of values. A set of objects defined over a domain supporting a set of operations guided by the rules are reflected to as non primitive data structures. A non primitive data structure can be classified as either linear or non linear depending on the ......

Solutions to some problems require the associated data to be organized as a linear list of data items in which operations are permitted to take place at only one end of the list. The nested function calls in a program, conversion of an infix form of an expression to an equivalent postfix or prefix, computing factorial of a number, and so on can be
effectively formulated using this simple principl ......

The concept of stack data structures finds its application in effectively solving various kinds of problems. Realizing nested function calls ' in programming, conversion of expressions, evaluation of expressions, checking the validity of expressions,finding whether a string is palindrome or not, are few examples to name among several.

Recursion is an important concept used in problem solving techniques. Some problems are recursive in nature whose solutions can be better described in terms of recursion.

Queue is an important and familiar concept used in our day to day life. We can see people standing in a queue to board the bus, oi' standing in a cinema hall to purchase tickets or waiting in a queue for reserving tickets etc. The basic principle followed in these cases is the first come first served and in fact, this is the most. pleasing way of serving people when they are in mass requesting a p ......

Linear data structures such as stacks and queues can be realized using sequential allocation technique i.e. arrays. Since arrays represent contiguous locations m memory, implementing stacks and queues using arrays offers several advantages.

A singly linked list is a collection of nodes, which can be used to effectively implement linear data structures such as stacks and queues. In
general, each node in a singly linked list consists of several fields out which one field is used to hold the address of the next node in a list and all other fields are used to hold the data items of type primitive. In order to implement a singly linked l ......

A circularly linked list may be a natural option to represent arrays that are
naturally circular, e.g. the comers of a polygon, a pool of buffers that are used and released in FIFO order, or a set of processes that should be time-shared in round-robin order.

The linked lists can be used to effectively implement other linear as well as
non linear data structures. Also linked lists can be used to perform operations on long positive numbers, manipulation of polynomials, , construction of symbol tables, multiplication of sparse matrices etc.

Graph is an important mathematical representation of a physical problem, for example finding optimum shortest path from a city to another city for a traveling sales man, so as to minimize the cost.

Organizing the data in a hierarchical structure plays a very important role for most of the applications, which involve searching.
Trees are the most useful and widely used data structure in Computer Science in the areas of data storage, parsing, evaluation of expressions, and compiler design.

This unit explains the linked representation of binary trees and lists the advantages of representing binary trees using linked list allocation. It also describes binary tree as a data structure.

Traversal is the process of visiting all the vertices of the tree in a systematic order. Systematic means that every time the tree is traversed it should yield the same result. This process is not as commonly used as finding, inserting, and deleting nodes. One reason for this is that traversal, is not particularly fast. But traversing a tree has some .surprisingly useful applications and is theore ......

We have understood that the trees can be represented either in the form on sequential allocation or in the form of linked list allocation, Consider a tree of n nodes represented using linked list allocation. As we all know that each node will be having two pointers or links i.e., left link pointing to left child and right link pointing to right child. Since we have n nodes in the tree, totally we ......

In this unit we shall consider general type of tree there a node can have any number of child nodes. In its most abstract sense, a tree is simply a data structure capable of representing a hierarchical relationship between a parent node and an unlimited number of children nodes.

In the last unit we have learnt about representation of trees using linked list allocation, their traversal and converting a general tree into its equivalent binary tree. Also we have learnt about forest i.e., collection of trees. Similar to traversal of binary tree the forest can also be traversed, the same recursive techniques that have been used to traverse' binary tree can be used to traverse ......

A forest is nothing but a collection of disjoint trees. The best way to represent the forest in the computer is to convert the forest into its equivalent binary tree. Any forest can be converted into its equivalent binary tree in two ways. The first is using recursion and the second method is using preorder and inorder sequence of the forest.

Sorting is a process of arranging;it set of unordered elements in some predefined ordered: The simplest way of ordering any unordered set of elements in some predefined orders is to consider randomly 'one element at a time and array them, continue this procedure for all
elements in the set.

Binary search based insertion sort is an improvement over insertion sort, which employs a modified version of binary search to sort the list of 'n' element. The central idea of the BSBI algorithm is similar to that of Insertion sort but the method used for searching a position for
inserting an element in the sorted sub-list is binary search instead of linear search.

A heap is defined as a collection of numbers, normally arranged in the form of a tree - A binary tree to be more precise (students can look into a later block to look at the concept of binary trees). The condition is , that the parent node is always larger than the child nodes.

Searching is a technique of finding whether a given element is present in a list of elements. If the search element is present in the list the searching technique should return the index where the given searching element is present in the list. If the search element is not present in the list then the searching technique should return NULL indicating that search element is not present in the list. ......

Pages: 13

Price:
Rs 9.75

Total 0 Chapter(s) Shortlisted and Price Rs..00Purchase Now

Home

About Us

Payments

Contact Us

Claims

Help

Advertising Guidelines

Safe and Secure Payment
All major credit and debit cards are accepted.