Linked lists - implementation, Data Structure & Algorithms

The Linked list is a chain of structures wherein each structure contains data in addition to pointer, which stores the address (link) of the next logical structure in the list.

A linked list is a data structure utilized to maintain a dynamic series of data. Think of linked list as a line of bogies of train where each of bogies is related on to the next bogie. If you have the idea of where the first bogie is, you can follow the link to the next bogie. By following links, you can determine any bogie of the train. While you get to a bogie which isn't holding (linked) on to another bogie, you know you are at the ending.

Linked lists work in the similar way, except programmers generally refer to nodes rather than bogies. A single node is described in the similar way as any other user defined type or the object, except that it also contains a pointer to a variable of the similar type as itself.

We will be seeing how the linked list is stored into the memory of the computer. In the following Figure, we can illustrates that start is a pointer i.e. pointing to the node that contains data as A& the node B is pointing to the node C and the last node  is not pointing to any node. Given 1000,1050,1200 are memory addresses.

1258_LINKED LISTS - IMPLEMENTATION.png

Figure: A Singly linked list

Consider the following definition:

typedefstruct node

{

int data;

struct node *next;

} list;

Once you consists a definition for list node, you can create a list easily by declaring a pointer to the first element, called as the "head". Generally a pointer is utilizedrather than a regular variable. List can be described as

list *head;

This is as simple as that! Now you have a linked list data structure. It isn't in general useful at the moment. You can illustrate if the list is empty. We will be seeing how to declare & define list-using pointers in the following program.

#include

typedefstruct node

{

 

int data;

struct node *next;

} list;

int main()

{

list *head = NULL; /* initialize list head to NULL */

if (head == NULL)

{

printf("The list is empty!\n");

}

}

Posted Date: 4/11/2013 2:53:33 AM | Location : United States







Related Discussions:- Linked lists - implementation, Assignment Help, Ask Question on Linked lists - implementation, Get Answer, Expert's Help, Linked lists - implementation Discussions

Write discussion on Linked lists - implementation
Your posts are moderated
Related Questions
what is frequency count with examble? examble?

Sort the following array of elements using quick sort: 3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8.

Q. The system allocates the memory for any of the multidimensional array from a big single dimensional array. Describe two mapping schemes that help us to store the two dimensi

In the book the following methods are presented: static void selectionSort(Comparable[] list) static void insertionSort(Comparable[] list) static boolean linearSearch(Comparable

Determine the importance of array Arrays are significant since they allow many values to be stored in a single data structure whereas providing very fast access to each value.


Explain an efficient and effective way of storing two symmetric matrices of the same order in the memory. A n-square matrix array will be symmetric if a[j][k]=a[k][j] for all j

ST AC K is explained as follows : A stack is one of the most usually used data structure. A stack is also called a Last-In-First-Out (LIFO) system, is a linear list in

a. In worst case the order of linear search is O (n/2) b. Linear search is more competent than Binary search. c. For Binary search, the array must be sorted in ascending orde

Midsquare Method :- this operates in 2 steps. In the first step the square of the key value K is taken. In the 2nd step, the hash value is obtained by deleting digits from ends of