1.) What are the differences between a linked list and a stack?
2.) What are the differences between a stack and a queue?
3.) Explain exactly why a reference variable can’t be changed once it is set.
For questions 4 – 8, write the required statements to accomplish each. Assume that all the manipulations occur in main and assume the following structure definition:
struct gradeNode {
char lastName[ 20 ];
double grade;
struct gradeNode *nextPtr;
};
4.) Create a pointer to the start of the list called startPtr. (The list is empty!)
5.) Create a new node of type struct gradeNode that is pointed to by a pointer newPtr of type struct gradeNode *. Assign the string “Jones” to member lastName and the value 91.5 to member grade. Provide any necessary declarations and statements.
6.) Assume that the list pointed to by startPtr is maintained in alphabetical order. Provide the statements necessary to insert the following node properly: “Pritchard”, 66.5 (Note: you do not know what is in the list, only that it is maintained in alphabetical order.)
Use pointers previousPtr, currentPtr and newPtr to perform the insertions. Assume that newPtr points to the new node.
7.) Write a while loop that prints the data in each node of the list. Use pointer currentPtr to move along the list.
8.) Write a while loop that deletes all the nodes in the list and frees the memory associated with each node. Use pointer currentPtr and pointer tempPtr to walk along the list and free memory, respectively.
9.) Write the code to declare a structure “myNode” that holds an integer value and a next pointer.
10.) Assume you have a linked list of “myNode” structures and the pointer “head” points to the first node of the list. Write a function that takes the head pointer as a parameter and returns a pointer to the last node in the list.
11.) Assume you have a linked list of “myNode” structures and the pointer “head” points to the first node of the list. Write a function that takes the head pointer as a parameter and a second parameter which is the number to search for. The function returns a pointer to the node if the number is found and NULL if the number is not in the list.
12.) Assuming the following structure definition write a proper push function to save a number to a list used as a stack.
struct Node
{
int number;
struct Node *next;
};
13.) Assuming the previous structure definition from problem 12, write a proper remove function to remove a number from a list used as a queue.
Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.
You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.
Read moreEach paper is composed from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.
Read moreThanks to our free revisions, there is no way for you to be unsatisfied. We will work on your paper until you are completely happy with the result.
Read moreYour email is safe, as we store it according to international data protection rules. Your bank details are secure, as we use only reliable payment systems.
Read moreBy sending us your money, you buy the service we provide. Check out our terms and conditions if you prefer business talks to be laid out in official language.
Read more