The following BST dataInReverse Order function has an error. Complete the testDataInReverseOrder test function using the provided assert True function to discover dataInReverseOrder's error (i.e., fail). The test should pass once the function is fixed. Note: this code is meant to be compiled by itself, so do not assume the existence of an insert function, etc. #include #include #include using namespace std; void assertTrue (bool b, string s) { if (b) { cout << "PASSED: " << s << endl; } else { cout << "FAILED: " << s << endl; } } struct BSTNode { int data; BSTNode left; BSTNode" right; }; // returns a vector of all the data in a BST in reverse sorted order (i.e., descending order) vector dataInReverseOrder (BSTNode* root) { // empty tree case if (root == nullptr) return {}; // non-empty tree vector right = data InReverseOrder (root->right);

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter8: Arrays And Strings
Section: Chapter Questions
Problem 28SA
icon
Related questions
Question
The following BST dataInReverseOrder function has an error. Complete the testDataInReverseOrder test function using the provided assert True function to
discover dataInReverseOrder's error (i.e., fail). The test should pass once the function is fixed.
Note: this code is meant to be compiled by itself, so do not assume the existence of an insert function, etc.
#include <string>
#include <vector>
#include <iostream>
using namespace std;
void assertTrue (bool b, string s) {
if (b) {
cout << "PASSED: " << s << endl;
} else {
cout << "FAILED: " << s << endl;
}
}
struct BSTNode {
int data;
BSTNode* left;
BSTNode* right;
};
// returns a vector of all the data in a BST in reverse sorted order (i.e., descending order)
vector<int> dataInReverseOrder (BSTNode* root) {
}
// empty tree case
if (root == nullptr) return {};
// non-empty tree
vector<int> right = dataInReverseOrder (root->right);
vector<int> left = dataInReverseOrder (root->left);
vector<int> res;
for (int x: right) res.push_back(x);
for (int x : left) res.push_back(x);
res.push_back(root->data);
return res;
}
void testDataInReverseOrder() {
// FIXME: implement a test that calls dataInReverseOrder and assertTrue
// The test should discover the error and fail. The test should
// pass once the function is fixed.
}
int main() {
testDataInReverseOrder();
return 0;
Transcribed Image Text:The following BST dataInReverseOrder function has an error. Complete the testDataInReverseOrder test function using the provided assert True function to discover dataInReverseOrder's error (i.e., fail). The test should pass once the function is fixed. Note: this code is meant to be compiled by itself, so do not assume the existence of an insert function, etc. #include <string> #include <vector> #include <iostream> using namespace std; void assertTrue (bool b, string s) { if (b) { cout << "PASSED: " << s << endl; } else { cout << "FAILED: " << s << endl; } } struct BSTNode { int data; BSTNode* left; BSTNode* right; }; // returns a vector of all the data in a BST in reverse sorted order (i.e., descending order) vector<int> dataInReverseOrder (BSTNode* root) { } // empty tree case if (root == nullptr) return {}; // non-empty tree vector<int> right = dataInReverseOrder (root->right); vector<int> left = dataInReverseOrder (root->left); vector<int> res; for (int x: right) res.push_back(x); for (int x : left) res.push_back(x); res.push_back(root->data); return res; } void testDataInReverseOrder() { // FIXME: implement a test that calls dataInReverseOrder and assertTrue // The test should discover the error and fail. The test should // pass once the function is fixed. } int main() { testDataInReverseOrder(); return 0;
Expert Solution
steps

Step by step

Solved in 3 steps with 1 images

Blurred answer
Knowledge Booster
Functions
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
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning