EECS 560 Lab 1

$30.00

Category: You will Instantly receive a download link for .zip solution file upon Payment || To Order Original Work Click Custom Order?

Description

5/5 - (1 vote)

This lab will help you brush up on using pointers and linked lists in C++.    You are to read in the numbers from a data file of integers, one at a time, and put each number, as it is read, into a node of a singly linked list.   (You may not store all of the numbers in a vector or array—the list must be built as you read in the numbers.)

Then, you are to reverse the list using only constant extra space.   In other words the reversal is to be done using only reassignment of pointers.   You may neither duplicate data nor create a new list and move nodes from the old list to the new one.   Even though you may be a bit rusty, you should be able to complete this lab during the lab period.

Your lab must be turned in at the end of the lab session, even if you are not finished.  The file of numbers you read from will be data.txt.    You may hard code the file name in your program if you wish.

 

Print out the list contents after you have completed building the list and again after you have completed reversing it.    Be sure to label your output.  When you are finished, submit the final project along with a makefile so that we may build an executable and run your code.   Make sure to zip or tar everything together.

 

Example:

data file contents:   1 2 3   (Data must be read in as integers, not characters.)

 

Initial linked list:

 

 

After the second node has been made to point to the first, the list looks like this:

Your task is to make sure that the node containing 3 doesn’t get lost in this process (in other words, make sure you have something pointing to it so you can continue the reversal process).    The data file may contain an arbitrary number of integers, not just the three in the illustration.