Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Please help fix my code C++. It says that it is unable to compile because variable l is uninitialized. I believe lines 96-97. The code

Please help fix my code C++. It says that it is unable to compile because variable l is uninitialized. I believe lines 96-97. The code must also match the following outpout.

image text in transcribed

image text in transcribed

#include

#include

#include

using namespace std;

typedef struct node{

string data;

struct node *next;

}Node;

class sList{

Node *head;

int size_;

public:

sList(){

head = NULL;

size_ = 0;

}

void append(string data){

Node *temp = new Node;

temp->data = data;

temp->next = NULL;

if(size_ == 0 && head == NULL){

head = temp;

size_++;

return;

}

Node *tmp = head;

while(tmp->next != NULL){

tmp = tmp->next;

}

tmp->next = temp;

size_++;

}

void remove(string data){

if(head == NULL){

cout

}

Node *temp = head;

Node *prev = NULL;

while(temp != NULL){

if(temp->data == data){

if(prev == NULL){

head = temp->next;

delete temp;

size_--;

return;

}

prev->next = temp->next;

delete temp;

size_--;

return;

}

prev = temp;

temp = temp->next;

}

cout

}

void print(){

if(head == NULL){

cout

return;

}

Node *temp = head;

while(temp != NULL){

coutdata;

if(temp->next != NULL){

cout";

}

temp = temp->next;

}

}

};

sList* readFile(ifstream &ifs){

cout

sList *l = new sList;

string data;

ifs>>data;

while(!ifs.eof()){

l->append(data);

ifs>>data;

}

return l;

}

int main(){

ifstream ifs;

ifs.open("data2.txt");

sList *l;

if(ifs.is_open()){

l = readFile(ifs);

}else{

cout

}

cout

l->print();

cout

string choice = "y";

string d;

while(choice[0] != 'n'){

cout

cin>>d;

l->remove(d);

cout

l->print();

cout

cin>>choice;

}

return 0;

}

Turn the linked List of strings implementation into a singly-linked list sList: Drop the previous pointer of the nodes and the previous member function of the iterator. Reimplement the other member functions so that they have the same effect as before. Hint: In order to remove an element in constant time, iterators should store the predecessor of the current node. . You can modify the List class provided in the textbook or see modify the implementation of this class posted on ccle (see sample code for lectures 17-20). Write a program that reads the data from data2.txt into the single-linked list sList. Display the elements of the list and then prompt the user to enter an element for removal. Implement a loop in which the removal action is performed until the user requests to quit

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Design And Implementation

Authors: Edward Sciore

2nd Edition

3030338355, 978-3030338350

More Books

Students also viewed these Databases questions

Question

The company openly shares plans and information with employees.

Answered: 1 week ago