COMPUTER SCIENCE ILLUMIN.-TEXT
COMPUTER SCIENCE ILLUMIN.-TEXT
7th Edition
ISBN: 9781284156010
Author: Dale
Publisher: Jones & Barlett
Expert Solution & Answer
Book Icon
Chapter 18, Problem 34E

a.

Explanation of Solution

Representing the numbers in a linked list:

  • The numbers can be represented in a linked list by representing each digit in a node.
  • Then, the digits in the number 1066 is 1, 0, 6, and 6 which can be represented separately in a linked list as shown:

b.

Explanation of Solution

Addition of two numbers in two different lists and storing the results in another list:

  • To add the numbers present in two linked lists, the values present in each node should be added from right to left.
    • The carry should be added with the previous node values...

c.

Explanation of Solution

Algorithm to add two numbers in two different lists and storing the results in another list:

// Set the current pointer of first linked list to point

// the last node of the first linked list.

Set ptr1 to last

// Set the current pointer of second linked list to point

// the last node of the second linked list.

Set ptr2 to last

// Set the value 0 to the variable “remainder”

Set remainder to 0

// Continue the following set of statements until the first // linked list and second linked list becomes empty.

While (ptr1 <> NULL and ptr2 <> NULL)

  // Create a new node.

  Get a node_new

// Add the value of the node where the current pointer

  // of first linked list points with the value of the

// node where the current pointer of second linked

// list points.

// Then by using the MOD function perform the division

// to get the remainder of the additional values and

  // set it to new node.

Set info(node_new) to (info(ptr1) + info(ptr2) + remainder) MOD 10

// Add the value of the node where the current pointer

  // of first linked list points with the value of the

// node where the current pointer of second linked

// list points.

// Then by using the DIV function perform the division // to get the quotient of the additional values and

// set it to new node

Set remainder to (info(ptr1) + info(ptr2) + remainder)DIV 10

// Set the current pointer of first linked list to

  // point the previous node of the current node of the

  // first linked list...

Blurred answer
Students have asked these similar questions
Please answer JAVA OOP problem below: You are working at a university that tracks students. Each student is identified by their name and faculty advisor. Each faculty advisor is identified by their name, department, and maximum number of students they can advise. Using solid OO design principles, create a modular program that implements all the classes for the problem and also creates an implementation class that gathers user input for one student and then prints out the information gathered by creating the appropriate data definition and implementation classes. All data must be validated.    I have given the code so far: Implementation: import javax.swing.JOptionPane; public class Implementation {     public static void main(String[] args) {         FacultyAdvisor facultyAdvisor = new FacultyAdvisor("Sharmin Sultana", "IT", 30);         Student student = new Student("John", facultyAdvisor);         JOptionPane.showMessageDialog(null, student.toString());     } }   Student: public…
Exercise 1 Function and Structure [30 pts] Please debug the following program and answer the following questions. There is a cycle in a linked list if some node in the list can be reached again by continuously following the next pointer. #include typedef struct node { int value; struct node *next; } node; int 11_has_cycle (node *first) if (first == node *head { NULL) return 0;B = first; while (head->next != NULL) { if (head == first) { return 1; } head head->next; } return 0; void test_11_has_cycle() { int i; node nodes [6]; for (i = 0; i < 6; i++) nodes [i] .next = NULL; nodes [i].value i; } nodes [0] .next = &nodes [1]; nodes [1] .next = &nodes [2]; nodes [2] .next = &nodes [3]; nodes [3] .next = & nodes [4]; nodes [4] .next = NULL; nodes [5] .next = &nodes [0]; printf("1. Checking first list for cycles. \n Function 11_has_cycle says it hass cycle\n\n", 11_has_cycle (&nodes [0]) ?"a":"no"); printf("2. Checking length-zero list for cycles. \n Function 11_has_cycle says it has %s…
checkpoint exercice for my students for Amortized Analysis
Knowledge Booster
Background pattern image
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education