Abstract data type-list, Data Structure & Algorithms

Assignment Help:

It is a useful tool for indicating the logical properties of data type. It is a collection of values & a set of operations on those values. Methodically, "a TYPE is a set, & elements of set are Values of that type".

ADT List

A list of elements of type T is finite sequence of elements of type T together with the operations of, update, create,delete, testing for full,testing for empty, finding the size, traversing the elements.

In defining Abstract Data Type, we are not concerned with time or space efficiency as well as regarding implementation details. The elements of a list might be characters,integers, real numbers & combination of multiple data types.

Consider a real world problem, where we have a company and we want to store the details of employees. To store the details, we need a data type which can store the type details containing the name of employee, date of joining etc. The list of employees may increase depending on the recruitment and may decrease on retirements or termination of employees. For making it simple and for better understanding purpose, we are only taking the name of employee field and ignoring the date of joining etc. The operations we must perform on this list of employees are creation, insertion, deletion, visiting, etc. We described employee_list as

typedefstruct

{

char   name[20];

...................

......................

}  emp_list;

The Operations on emp_list can be defined as

Create_emplist (emp_list   * emp_list )

{

/* we will be writing create function by taking help of 'C' programming language, here */

}

The list has been created & name is a valid entry in emplist, & position p specifies the position in the list where name must inserted insert_emplist (emp_list   * emp_list ,   char      *name, int position  )

{

/* we will be writing insert function by taking help of 'C' programming language,Here */

}

delete_emplist (emp_list   * emp_list,    char      *name)

{

/* we will be writing delete function by taking help of 'C' programming language,Here */

}

visit_emplist (emp_list   * emp_list )

{

/* we will be writing visit function through taking help of 'C' programming language,here */

}

The list can be implemented through two ways: the contiguous (Array) implementation & the linked (pointer) implementation. In the contiguous implementation, the entries into the list are stored next to each other into an array. The linked list implementation uses pointers & dynamic memory allocation.


Related Discussions:- Abstract data type-list

Program, circular queue using c

circular queue using c

Functions for inserting and deleting at either of the end, Q. Develop a rep...

Q. Develop a representation for a list where insertions and deletions can be done at either end. Such a structure is known as a Deque (Double ended queue). Write functions for inse

Algorithm for pre-order traversal, Hear is given a set of input representin...

Hear is given a set of input representing the nodes of a binary tree, write a non recursive algorithm that must be able to give the output in three traversal orders. Write down an

Whether a binary tree is a binary search tree or not, Write an algorithm to...

Write an algorithm to test whether a Binary Tree is a Binary Search Tree. The algorithm to test whether a Binary tree is as Binary Search tree is as follows: bstree(*tree) {

Depth First Search Through Un-weighted Connected Graph , Q. Write down the ...

Q. Write down the algorithm which does depth first search through an un-weighted connected graph. In an un-weighted graph, would breadth first search or depth first search or neith

Process of post-order traversal, Post-order Traversal This can be done ...

Post-order Traversal This can be done both iteratively and recursively. The iterative solution would need a change of the in-order traversal algorithm.

Non-recursive algorithm, Q .  Write down the non-recursive algorithm to tra...

Q .  Write down the non-recursive algorithm to traverse a tree in preorder. Ans: T he Non- Recursive algorithm for preorder traversal is written below: Initially i

Efficient way of storing a sparse matrix in memory, Explain an efficient wa...

Explain an efficient way of storing a sparse matrix in memory.   A matrix in which number of zero entries are much higher than the number of non zero entries is called sparse mat

The theta-notation, This notation bounds a function to in constant factors....

This notation bounds a function to in constant factors. We say f(n) = Θ(g(n)) if there presents positive constants n 0 , c 1 and c 2 such that to the right of n 0 the value of f

Implementation of queue using a singly linked list, Implementation of queue...

Implementation of queue using a singly linked list: While implementing a queue as a single liked list, a queue q consists of a list and two pointers, q.front and q.rear.

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd