// Remove the Node with the student at the back (tail) of the list // should not fail if list is empty! Print an error message if this occurs // Don't forget that your head and tail pointers will be null pointers if the list is empty void StudentList::popBack() { if(tail == nullptr) { cout << "Error, the list is empty" << endl; return; } else{ Node temp = tail->prev; delete tail; tail = temp; if(tail F nullptr) { head = nullptr; } else{ } } tail->next = nullptr; numStudents--;

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Answer the given question with a proper explanation and step-by-step solution.

the popBack() function fails when the node is empty
the insertStudent only looks until a certain point
SORANA
63
64
65
66
67
68
69
70
71
72
73
74
FEFERSE
75
76
77
78
79
80
81
82
83
84
85
86
// Remove the Node with the student at the back (tail) of the list
// should not fail if list is empty! Print an error message if this occurs
// Don't forget that your head and tail pointers will be null pointers if the list is empty
StudentList::popBack() {
void
if(tail
nullptr)
{
cout << "Error, the list is empty" << endl;
return;
}
else{
Node temp = tail->prev;
delete tail;
tail = temp;
if(tail == nullptr)
{
head = nullptr;
}
else{
}
tail->next = nullptr;
numStudents--;
}
}
Transcribed Image Text:SORANA 63 64 65 66 67 68 69 70 71 72 73 74 FEFERSE 75 76 77 78 79 80 81 82 83 84 85 86 // Remove the Node with the student at the back (tail) of the list // should not fail if list is empty! Print an error message if this occurs // Don't forget that your head and tail pointers will be null pointers if the list is empty StudentList::popBack() { void if(tail nullptr) { cout << "Error, the list is empty" << endl; return; } else{ Node temp = tail->prev; delete tail; tail = temp; if(tail == nullptr) { head = nullptr; } else{ } tail->next = nullptr; numStudents--; } }
12
13
14
15
16
17
18
19
20
21
22
24
RS
26
RO
19
10
11
32
2
5
7
//insert a student at the position "index".
// for this list, count head as index e
// if index is outside of current list range,
// print a message and insert the student at the back of the list
// the previous Node at your target index should be moved forward. "For exampe, Node with student at index 1, becomes index 1+1"
// Remember that you already have methods that can add students to the front or back of list if needed! Don't repeat this code.
vold StudentList::insertStudent (Student s, int index)
(
if(index | index> numstudents)
(
cout << "Outside of Range" << endl;
addBack(s);
return;
>
else if (index -- 0)
(
addFront(s);
return;
}
else if (index--numStudents)
(
addBack(s);
return;
}
else
Node newstu- new Node (s);
Mode curr - head;
for(int i = 0; i < index; i++)
(
curr- curr ->next;
}
newstu->next = curr;
newstu->prev- curr->prev;
curr->prev->next netu;
curr->prev newStu;
numStudents++;
IT
Transcribed Image Text:12 13 14 15 16 17 18 19 20 21 22 24 RS 26 RO 19 10 11 32 2 5 7 //insert a student at the position "index". // for this list, count head as index e // if index is outside of current list range, // print a message and insert the student at the back of the list // the previous Node at your target index should be moved forward. "For exampe, Node with student at index 1, becomes index 1+1" // Remember that you already have methods that can add students to the front or back of list if needed! Don't repeat this code. vold StudentList::insertStudent (Student s, int index) ( if(index | index> numstudents) ( cout << "Outside of Range" << endl; addBack(s); return; > else if (index -- 0) ( addFront(s); return; } else if (index--numStudents) ( addBack(s); return; } else Node newstu- new Node (s); Mode curr - head; for(int i = 0; i < index; i++) ( curr- curr ->next; } newstu->next = curr; newstu->prev- curr->prev; curr->prev->next netu; curr->prev newStu; numStudents++; IT
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Operations of Linked List
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education