linked lists along with vectors linked lists


Linked Lists 

Along with vectors, linked lists are one of the fundamental data structures in computer science. Unlike vectors, which store information in a contiguous block of computer memory, linked lists have the potential to store information in non-adjacent memory blocks. In this lab, you will write a very basic doubly-linked list. To complete this lab, you will need to have created the appropriate .h and .c files that

implement the following struct and functions: 

typedef struct IntList_t 

 int value; 

 struct IntList_t *previous; 

 struct IntList_t *next; 

} IntList_t; 

 

IntList_t* intList_init(int starting_value) 

Like our vector's init function, the LL version must dynamically create a new IntList_t and set its starting value as well as setting the previous and next pointers to NULL. 

IntList_t * intList_rewind(IntList_t *some_list) 

This function returns a pointer to the "beginning" of the linked list. For our purposes, we will consider the beginning of a linked list to be represented by the IntList_t whose previous pointer is equal to NULL. 

void intList_add(IntList_t *some_list, int value) 

This function will add a new IntList_t to the end of the current linked list. Note that for our purposes, the last element in the list is represented by the individual IntList_t whose next pointer is equal to NULL. 

void intList_remove(IntList_t *some_list) 

This function removes the supplied IntList_t from the current chain of list items. 

void intList_free(IntList_t *some_list) 

Freeing up dynamic memory allocated for a linked list is a little more work than freeing up dynamic memory for a vector. As such, this function should call free on every node in the linked list. 

Sample Output 

To test these methods, you must write a simple test driver in your main function. Here is an example of my test driver:  

2065_sample_output.png

Solution Preview :

Prepared by a verified Expert
C/C++ Programming: linked lists along with vectors linked lists
Reference No:- TGS0484676

Now Priced at $35 (50% Discount)

Recommended (94%)

Rated (4.6/5)