Sunday, February 17, 2008

Data Structures Interview Questions IIQ

Why is the isEmpty() member method called?
The isEmpty() member method is called within the dequeue process to determine if there is an item in the queue to be removed i.e. isEmpty() is called to decide whether the queue has at least one element. This method is called by the dequeue() method before returning the front element.

How is the front of the queue calculated ?
The front of the queue is calculated by front = (front+1) % size.

What does each entry in the Link List called?
Each entry in a linked list is called a node. Think of a node as an entry that has three sub entries. One sub entry contains the data, which may be one attribute or many attributes. Another points to the previous node, and the last points to the next node. When you enter a new item on a linked list, you allocate the new node and then set the pointers to previous and next nodes.

What is Linked List ?
Linked List is one of the fundamental data structures. It consists of a sequence of? nodes, each containing arbitrary data fields and one or two ("links") pointing to the next and/or previous nodes. A linked list is a self-referential datatype because it contains a pointer or link to another data of the same type. Linked lists permit insertion and removal of nodes at any point in the list in constant time, but do not allow random access.

What member function places a new node at the end of the linked list?
The appendNode() member function places a new node at the end of the linked list. The appendNode() requires an integer representing the current data of the node.

How is any Data Structure application is classified among files?
A linked list application can be organized into a header file, source file and main application file. The first file is the header file that contains the definition of the NODE structure and the LinkedList class definition. The second file is a source code file containing the implementation of member functions of the LinkedList class. The last file is the application file that contains code that creates and uses the LinkedList class.

Which file contains the definition of member functions?
Definitions of member functions for the Linked List class are contained in the LinkedList.cpp file.

What are the major data structures used in the following areas : RDBMS, Network data model & Hierarchical data model.
1. RDBMS Array (i.e. Array of structures)
2. Network data model Graph
3. Hierarchical data model Trees.

Difference between calloc and malloc ?
malloc: allocate n bytes
calloc: allocate m times n bytes initialized to 0