Two sorted lists have been created, one implemented using a linked list (LinkedListLibrary class) and the other implemented using the built-in Vector class (VectorLibrary class). Each list contains 100 books (title, ISBN number, author), sorted in ascending order by ISBN number. Complete main() by inserting a new book into each list using the respective LinkedListLibrary and VectorLibrary InsertSorted() functions and outputting the number of book copy operations the computer must perform to insert the new book. Each InsertSorted() returns the number of book copy operations the computer performs. Ex: If the input is: Their Eyes Were Watching God 9780060838676 Zora Neale Hurston the output is: Number of linked list book copy operations: 1 Number of vector book copy operations: 95 Which list do you think will require the most operations? Why? Main.cpp   #include "LinkedListLibrary.h" #include "VectorLibrary.h" #include "BookNode.h" #include "Book.h" #include #include using namespace std; void FillLibraries(LinkedListLibrary &linkedListLibrary, VectorLibrary &vectorLibrary) {    ifstream inputFS; // File input stream    int linkedListOperations = 0;    int vectorOperations = 0;    BookNode* currNode;    Book tempBook;    string bookTitle;    string bookAuthor;    long long bookISBN;    // Try to open file    inputFS.open("books.txt");    while(getline(inputFS, bookTitle)) {       inputFS >> bookISBN;       inputFS.ignore(1, '\n');       getline(inputFS, bookAuthor);       // Insert into linked list       currNode = new BookNode(bookTitle, bookAuthor, bookISBN);       linkedListOperations = linkedListLibrary.InsertSorted(currNode, linkedListOperations);       // Insert into vector       tempBook = Book(bookTitle, bookAuthor, bookISBN);       vectorOperations = vectorLibrary.InsertSorted(tempBook, vectorOperations);    }    inputFS.close(); // close() may throw ios_base::failure if fails } int main () {

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

Two sorted lists have been created, one implemented using a linked list (LinkedListLibrary class) and the other implemented using the built-in Vector class (VectorLibrary class). Each list contains 100 books (title, ISBN number, author), sorted in ascending order by ISBN number.

Complete main() by inserting a new book into each list using the respective LinkedListLibrary and VectorLibrary InsertSorted() functions and outputting the number of book copy operations the computer must perform to insert the new book. Each InsertSorted() returns the number of book copy operations the computer performs.

Ex: If the input is:

Their Eyes Were Watching God 9780060838676 Zora Neale Hurston

the output is:

Number of linked list book copy operations: 1 Number of vector book copy operations: 95

Which list do you think will require the most operations? Why?


Main.cpp

 

#include "LinkedListLibrary.h"
#include "VectorLibrary.h"
#include "BookNode.h"
#include "Book.h"
#include <fstream>
#include <iostream>
using namespace std;

void FillLibraries(LinkedListLibrary &linkedListLibrary, VectorLibrary &vectorLibrary) {
   ifstream inputFS; // File input stream
   int linkedListOperations = 0;
   int vectorOperations = 0;

   BookNode* currNode;
   Book tempBook;

   string bookTitle;
   string bookAuthor;
   long long bookISBN;

   // Try to open file
   inputFS.open("books.txt");

   while(getline(inputFS, bookTitle)) {
      inputFS >> bookISBN;
      inputFS.ignore(1, '\n');
      getline(inputFS, bookAuthor);

      // Insert into linked list
      currNode = new BookNode(bookTitle, bookAuthor, bookISBN);
      linkedListOperations = linkedListLibrary.InsertSorted(currNode, linkedListOperations);

      // Insert into vector
      tempBook = Book(bookTitle, bookAuthor, bookISBN);
      vectorOperations = vectorLibrary.InsertSorted(tempBook, vectorOperations);
   }

   inputFS.close(); // close() may throw ios_base::failure if fails
}

int main () {
   int linkedListOperations = 0;
   int vectorOperations = 0;

   // Create libraries
   LinkedListLibrary linkedListLibrary = LinkedListLibrary();
   VectorLibrary vectorLibrary;

   // Fill libraries with 100 books
   FillLibraries(linkedListLibrary, vectorLibrary);

   // Create new book to insert into libraries
   BookNode* currNode;
   Book tempBook;

   string bookTitle;
   string bookAuthor;
   long bookISBN;

   getline(cin, bookTitle);
   cin >> bookISBN;
   cin.ignore();
   getline(cin, bookAuthor);

   // Insert into linked list
   // No need to delete currNode, deleted by LinkedListLibrary destructor
   currNode = new BookNode(bookTitle, bookAuthor, bookISBN);
   // TODO: Call LL_Library's InsertSorted() method to insert currNode and return
   //       the number of operations performed


   // Insert into VectorList
   tempBook  = Book(bookTitle, bookAuthor, bookISBN);
   // TODO: Call VectorLibrary's InsertSorted() method to insert tempBook and return
   //       the number of operations performed

   // TODO: Print number of operations for linked list

   // TODO: Print number of operations for vector

}

1 #include "Linked List Library.h"
2 #include "VectorLibrary.h"
3 #include "BookNode.h"
4 #include "Book.h"
5 #include <fstream>
6 #include <iostream>
7 using namespace std;
8
9 void FillLibraries (Linked ListLibrary &linked Li
10
ifstream inputFS; // File input stream
11
12
13
14
15
16
17
18
19
20
21
int linked ListOperations = 0;
int vectorOperations
0;
BookNode* currNode;
Book tempBook;
string bookTitle;
string bookAuthor;
long long bookISBN;
// Try to open file
inntre
=
Current file main.cpp
anan/"hanks but").
main.cpp
LinkedListLibrary.h
LinkedListLibrary.cpp
VectorLibrary.h
VectorLibrary.cpp
BookNode.h
BookNode.cpp
Book.h
Book.cpp
ary &vectorLibrary) {
Load default template...
4
Transcribed Image Text:1 #include "Linked List Library.h" 2 #include "VectorLibrary.h" 3 #include "BookNode.h" 4 #include "Book.h" 5 #include <fstream> 6 #include <iostream> 7 using namespace std; 8 9 void FillLibraries (Linked ListLibrary &linked Li 10 ifstream inputFS; // File input stream 11 12 13 14 15 16 17 18 19 20 21 int linked ListOperations = 0; int vectorOperations 0; BookNode* currNode; Book tempBook; string bookTitle; string bookAuthor; long long bookISBN; // Try to open file inntre = Current file main.cpp anan/"hanks but"). main.cpp LinkedListLibrary.h LinkedListLibrary.cpp VectorLibrary.h VectorLibrary.cpp BookNode.h BookNode.cpp Book.h Book.cpp ary &vectorLibrary) { Load default template... 4
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps

Blurred answer
Knowledge Booster
Arrays
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