Question: can you help me change this trendtracker.cpp so it only utilizes the libraries that are in the header file or main.cpp . so you can

can you help me change this trendtracker.cpp so it only utilizes the libraries that are in the header file or main.cpp. so you can only utilize
#include
#include
--------trendtracker.h---------
#ifndef TRENDTRACKER_H
#define TRENDTRACKER_H
//You may not include any additional libraries for this assignment,
//other than those listed below.
#include
#include
using namespace std;
class Trendtracker
{
// For the mandatory running times below:
// n is the number of hashtags in the Trendtracker.
public:
// Creates a new Trendtracker tracking no hashtags.
//
// Must run in O(1) time.
Trendtracker();
// Inserts a hashtag (tweeted 0 times) into the Trendtracker.
// If the hashtag already is in Trendtracker, does nothing.
//
// Must run in O(n) time.
void insert(string ht);
// Return the number of hashtags in the Trendtracker.
//
// Must run in O(1) time.
int size();
// Adds 1 to the total number times a hashtag has been tweeted.
// If the hashtag does not exist in TrendTracker, does nothing.
//
// Must run in O(n) time.
void tweeted(string ht);
// Returns the number of times a hashtag has been tweeted.
// If the hashtag does not exist in Trendtracker, returns -1.
//
// Must run in O(n) time.
int popularity(string name);
// Returns a most-tweeted hashtag.
// If the Trendtracker has no hashtags, returns "".
//
// Must run in O(n) time.
string top_trend();
// Fills the provided vector with the 3 most-tweeted hashtags,
// in order from most-tweeted to least-tweeted.
//
// If there are fewer than 3 hashtags, then the vector is filled
// with all hashtags (in most-tweeted to least-tweeted order).
//
// Must run in O(n) time.
void top_three_trends(vector& T);
// Remove the given hashtag from the trendtracker.
//
// Must run in O(n) time.
void remove(string ht);
// Fills the provided vector with the k most-tweeted hashtags,
// in order from most-tweeted to least-tweeted.
//
// If there are fewer than k hashtags, then the vector is filled
// with all hashtags (in most-tweeted to least-tweeted order).
//
// Must run in O(nk) time.
void top_k_trends(vector& T, int k);
private:
// A simple class representing a hashtag and
// the number of times it has been tweeted.
class Entry
{
public:
string hashtag;
int pop;
};
// Entries containing each hashtag and its popularity.
vector E;
};
#endif
----trendtracker.cpp--------
#include "trendtracker.h"
#include
Trendtracker::Trendtracker(){
E.clear();
}
void Trendtracker::insert(string ht){
for (Entry& entry : E){
if (entry.hashtag == ht){
return;
}
}
Entry newEntry;
newEntry.hashtag = ht;
newEntry.pop =0;
E.push_back(newEntry);
}
int Trendtracker::size(){
return E.size();
}
void Trendtracker::tweeted(string ht){
for (Entry& entry : E){
if (entry.hashtag == ht){
entry.pop++;
return;
}
}
}
int Trendtracker::popularity(string ht){
for (const Entry& entry : E){
if (entry.hashtag == ht){
return entry.pop;
}
}
return -1;
}
string Trendtracker::top_trend(){
if (E.empty()){
return "";
}
int maxPop = E[0].pop;
string topHashtag = E[0].hashtag;
for (const Entry& entry : E){
if (entry.pop > maxPop){
maxPop = entry.pop;
topHashtag = entry.hashtag;
}
}
return topHashtag;
}
void Trendtracker::top_three_trends(vector& T){
sort(E.begin(), E.end(),[](const Entry& a, const Entry& b){
return a.pop > b.pop;
});
T.clear();
for (const Entry& entry : E){
T.push_back(entry.hashtag);
if (T.size()>=3){
break;
}
}
}
void Trendtracker::remove(string ht){
for (auto it = E.begin(); it != E.end(); ++it){
if (it->hashtag == ht){
E.erase(it);
break;
}
}
}
void Trendtracker::top_k_trends(vector& T, int k){
sort(E.begin(), E.end(),[](const Entry& a, const Entry& b){
return a.pop > b.pop;
});
T.clear();
for (const Entry& entry : E){
T.push_back(entry.hashtag);
if (T.size()>= k){
break;
}
}
}
can you help me change this trendtracker.cpp so

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!