#include #include void PartOne() ( // 1A // PROPERLY SET UP VECTOR a WITH 500000 ELEMENTS IN ORDER 1, 2, 3, 4, ..., 500000 // PUT EACH ELEMENT IN THE FRONT AS YOU ADD THEM TO THE VECTOR std::vector a; // 10 // PROPERLY SET UP DEQUE b WITH Seeeee ELEMENTS IN ORDER 1, 2, 3, 4, // PUT EACH ELEMENT IN THE FRONT AS YOU ADD THEM TO THE DEQUE std::dequecint> b; // // 10 // FULLY DESCRIBE WHICH OF THE TWO OPERATIONS IS FASTER THAN THE OTHER AND WHY // EITHER USE A COMMENT, OR PRINT YOUR DESCRIPTION TO THE SCREEN // UP TO 5 POINTS (MAXIMUM 10 OVERALL) EXTRA CREDIT IF YOU CAN SHOW EVIDENCE OF // YOUR DESCRIPTION USING C++ CODE } void PartTwo() { // // 2A // SET UP VECTOR a WITH 500eeе ELEMENTS IN ORDER 1, 2, 3, 4, // PUT EACH ELEMENT IN THE BACK AS YOU ADD THEM TO THE VECTOR 11 500000 500000

C++ for Engineers and Scientists
4th Edition
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Bronson, Gary J.
Chapter13: Structures
Section: Chapter Questions
Problem 5PP
icon
Related questions
Question
100%

Every data structure that we use in computer science has its weaknesses and strengths
Having a full understanding of each will help make us better programmers!
For this experiment, let's work with STL vectors and STL deques
Full requirements descriptions are found in the source code file

Part 1
Work with inserting elements at the front of a vector and a deque (30%)

Part 2
Work with inserting elements at the back of a vector and a deque (30%)

Part 3
Work with inserting elements in the middle, and removing elements from, a vector and a deque (40%)

Please make sure to put your code specifically where it is asked for, and no where else
Do not modify any of the code you already see in the template file

This C++ source code file is required to complete this problem

 

#include <deque>
#include <vector>
void PartOne()
{
// -
// 1A
// PROPERLY SET UP VECTOR a WITH 500000 ELEMENTS IN ORDER 1, 2, 3, 4, ..., 500000
// PUT EACH ELEMENT IN THE FRONT AS YOU ADD THEM TO THE VECTOR
// - - - - - - - - - - - - - -
std::vector<int> a;
// --
// 18
// PROPERLY SET UP DEQUE b WITH 500000 ELEMENTS IN ORDER 1, 2, 3, 4, ..., 500000
// PUT EACH ELEMENT IN THE FRONT AS YOU ADD THEM TO THE DEQUE
// ------------
std::deque<int> b;
}
// - -
// 10
// FULLY DESCRIBE WHICH OF THE TWO OPERATIONS IS FASTER THAN THE OTHER AND WHY
// EITHER USE A COMMENT, OR PRINT YOUR DESCRIPTION TO THE SCREEN
}
void Part Two()
{
// UP TO 5 POINTS (MAXIMUM 10 OVERALL) EXTRA CREDIT IF YOU CAN SHOW EVIDENCE OF
// YOUR DESCRIPTION USING C++ CODE
||--------
// --
// 2A
// SET UP VECTOR a WITH 500000 ELEMENTS IN ORDER 1, 2, 3, 4,
// PUT EACH ELEMENT IN THE BACK AS YOU ADD THEM TO THE VECTOR
//....
std::vector<int> a;
-
--------
// --
// 2C
}
void PartThree()
{
// - - -
// 28
// SET UP DEQUE b WITH 500000 ELEMENTS IN ORDER 1, 2, 3, 4, ..., 500080
// PUT EACH ELEMENT IN THE BACK AS YOU ADD THEM TO THE DEQUE
// ---------- - - - -
std::dequecint> b;
----
// FULLY DESCRIBE WHICH OF THE TWO OPERATIONS IS FASTER THAN THE OTHER AND WHY
// EITHER USE A COMMENT, OR PRINT YOUR DESCRIPTION TO THE SCREEN
// UP TO 5 POINTS (MAXIMUM 10 OVERALL) EXTRA CREDIT IF YOU CAN SHOW EVIDENCE OF
// YOUR DESCRIPTION USING C++ CODE
11
// 3A
// 1) INSERT RANDOMLY 5-10 VALUES OF 8 BETWEEN THE 2 AND THE 3 VALUE IN THE a VECTOR
FOR EXAMPLE 1,2,3,4,5 BECOMES 1,2,8,8,8,8,8,8,3,4,5 (6 WAS RANDOMLY GENERATED)
// 2) EMPTY/CLEAR OUT THE VECTOR BY ONLY USING EITHER erase() OR pop_back()
//
// - - - - - - - - - - - - - - - - - - -
std::vector<int> a { 1, 2, 3, 4, 5 };
}
// You may not touch this code below
int main()
{
// --
// 38
// 1) INSERT RANDOMLY 5-10 VALUES OF 8 BETWEEN THE 2 AND THE 3 VALUE IN THE b DEQUE
11
FOR EXAMPLE 1,2,3,4,5 BECOMES 1,2,8,8,8,8,8,8,3,4,5 (6 WAS RANDOMLY GENERATED)
// 2) PROPERLY EMPTY/CLEAR OUT THE DEQUE
// ----- - - - - - - - - - - - - - --- --- - - - - - - - - - - - - ----
std::deque<int *> b { new int(1), new int(2), new int(3), new int(4), new int(5) };
500800
// Add some variability to the random number generator
srand(static_cast<unsigned int>(NULL));
// Work with the fronts of the vector and deque data structures
PartOne();
// Work with the backs of the vector and deque data structures
PartTwo();
// Cleanup
system("PAUSE");
return 0;
// Work with inserting and clearing the vector and deque data structures
PartThree();
Transcribed Image Text:#include <deque> #include <vector> void PartOne() { // - // 1A // PROPERLY SET UP VECTOR a WITH 500000 ELEMENTS IN ORDER 1, 2, 3, 4, ..., 500000 // PUT EACH ELEMENT IN THE FRONT AS YOU ADD THEM TO THE VECTOR // - - - - - - - - - - - - - - std::vector<int> a; // -- // 18 // PROPERLY SET UP DEQUE b WITH 500000 ELEMENTS IN ORDER 1, 2, 3, 4, ..., 500000 // PUT EACH ELEMENT IN THE FRONT AS YOU ADD THEM TO THE DEQUE // ------------ std::deque<int> b; } // - - // 10 // FULLY DESCRIBE WHICH OF THE TWO OPERATIONS IS FASTER THAN THE OTHER AND WHY // EITHER USE A COMMENT, OR PRINT YOUR DESCRIPTION TO THE SCREEN } void Part Two() { // UP TO 5 POINTS (MAXIMUM 10 OVERALL) EXTRA CREDIT IF YOU CAN SHOW EVIDENCE OF // YOUR DESCRIPTION USING C++ CODE ||-------- // -- // 2A // SET UP VECTOR a WITH 500000 ELEMENTS IN ORDER 1, 2, 3, 4, // PUT EACH ELEMENT IN THE BACK AS YOU ADD THEM TO THE VECTOR //.... std::vector<int> a; - -------- // -- // 2C } void PartThree() { // - - - // 28 // SET UP DEQUE b WITH 500000 ELEMENTS IN ORDER 1, 2, 3, 4, ..., 500080 // PUT EACH ELEMENT IN THE BACK AS YOU ADD THEM TO THE DEQUE // ---------- - - - - std::dequecint> b; ---- // FULLY DESCRIBE WHICH OF THE TWO OPERATIONS IS FASTER THAN THE OTHER AND WHY // EITHER USE A COMMENT, OR PRINT YOUR DESCRIPTION TO THE SCREEN // UP TO 5 POINTS (MAXIMUM 10 OVERALL) EXTRA CREDIT IF YOU CAN SHOW EVIDENCE OF // YOUR DESCRIPTION USING C++ CODE 11 // 3A // 1) INSERT RANDOMLY 5-10 VALUES OF 8 BETWEEN THE 2 AND THE 3 VALUE IN THE a VECTOR FOR EXAMPLE 1,2,3,4,5 BECOMES 1,2,8,8,8,8,8,8,3,4,5 (6 WAS RANDOMLY GENERATED) // 2) EMPTY/CLEAR OUT THE VECTOR BY ONLY USING EITHER erase() OR pop_back() // // - - - - - - - - - - - - - - - - - - - std::vector<int> a { 1, 2, 3, 4, 5 }; } // You may not touch this code below int main() { // -- // 38 // 1) INSERT RANDOMLY 5-10 VALUES OF 8 BETWEEN THE 2 AND THE 3 VALUE IN THE b DEQUE 11 FOR EXAMPLE 1,2,3,4,5 BECOMES 1,2,8,8,8,8,8,8,3,4,5 (6 WAS RANDOMLY GENERATED) // 2) PROPERLY EMPTY/CLEAR OUT THE DEQUE // ----- - - - - - - - - - - - - - --- --- - - - - - - - - - - - - ---- std::deque<int *> b { new int(1), new int(2), new int(3), new int(4), new int(5) }; 500800 // Add some variability to the random number generator srand(static_cast<unsigned int>(NULL)); // Work with the fronts of the vector and deque data structures PartOne(); // Work with the backs of the vector and deque data structures PartTwo(); // Cleanup system("PAUSE"); return 0; // Work with inserting and clearing the vector and deque data structures PartThree();
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Array
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++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT
New Perspectives on HTML5, CSS3, and JavaScript
New Perspectives on HTML5, CSS3, and JavaScript
Computer Science
ISBN:
9781305503922
Author:
Patrick M. Carey
Publisher:
Cengage Learning