Test your basic knowledge |

Data Structures Using C++

Subject : it-skills
Instructions:
  • Answer 50 questions in 15 minutes.
  • If you are not ready to take this test, you can study here.
  • Match each statement with the correct term.
  • Don't refresh. All questions and answers are randomly picked and ordered every time you load a test.

This is a study tool. The 3 wrong answers for each question are randomly chosen from answers to other questions. So, you might find at times the answers obvious, but you will see it re-enforces your understanding as you take the test each time.
1. Given container ct - what is the effect of ct.rbegin()?






2. The function _____ can be used with any container type including arrays.






3. Every container contains the type






4. A base class wants to allow a derived class to access one of its data members. However - the base class does not want this member to be directly accessed outside the class. The base class should declare the member using the ____ access specifier.






5. A class that contains a pointer variable as one of its data members should contain a destructor to






6. vector<int> v (1 - 10); vector<int> w (1 -20); v.swap (w); cout << v[0]; What is the output of the code fragment above?






7. In a(n) ____ copy - each pointer refers to its own data.






8. The data type of each ____ depends on the specific application.






9. Suppose your class contains a pointer variable as one of its data members. When performing member-wise copies between two objects of the same class - its important to have an overloaded ____ operator to prevent shallow copying of data.






10. An array created during the execution of a program is called a






11. Which function is common to all sequence containers but NOT all containers?






12. The statement "q++" increments the value of q by ____ bytes. (double *q;)






13. What is the value of the postfix expression: 5 4 * 3 + ?






14. The assignment statement *p=78; changes the content of memory location 1800 and therefore also changes the content of ____.






15. If you don't want a pointer to point to anything you should initialize it by setting it to






16. You can initialize a pointer variable by setting it to ____






17. The time complexity of the function isEmpty in an array list is






18. Each pointer refers to its own data






19. What does the term deque stand for?






20. The increment operator ______ increments the value of a pointer variable by twice the size of the memory to which it is pointing.






21. With templates - you can write a single code segment for a set of related functions - called a ____.






22. The time complexity of the linear search function in an array list is ____.






23. Which element of a stack has been in the stack the longest?






24. When initializing the object of a derived class - the ____ of the base class is executed first.






25. template<class inputIterator -class outputIterator>outputItr copy(inputIteratorfirst1 - inputIterator last - outputIterator first2); From the function prototype copy above - which parameter specifies the position from which to begin copying the eleme






26. What are containers used for?






27. Suppose your class contains a pointer variable as one of its data members. When performing member-wise copies between two objects of the same class - its important to have an overloaded ____ operator to prevent shallow copying of data.






28. v[0] = 5; v[1] = 2; v[2] = 7; vector<int>::iterator first = v.begin(); vector<int>::iterator last = v.end();






29. &p is equivalent to: 1200 *p means the content of the memory location 1800 - pointed to by p; that is - pointed to by the content of memory location ____.






30. A class that contains a pointer variable as one of its data members should contain an overloaded assignment operator to






31. In an array list the time complexity of the isEmpty function is identical to the time complexity of the ____ function.






32. Inheritance is an example of the ____ relationship.






33. An array created during the execution of a program is called a ____ array.






34. Like function templates - ____ are used to write a single code segment for a set of related classes.






35. A derived class can directly access ____.






36. If your class contains a pointer variable as one of its data members - having a destructor would prevent ____ leaks.






37. In a(n) ____ copy - two or more pointers of the same type point to the same memory






38. What is the time-complexity of the overloaded assignment operator?






39. Which answer most accurately completes the following sentence: A linked list is made up of ____.






40. If you applied the operation pop to the stack above - which book would be left on top of the stack?






41. In a single inheritance - the derived class is derived from ____base class(es).






42. Which of the following should be used to traverse a list?






43. Which of the following notations requires the use of parentheses?






44. What is the equivalent postfix expression for the infix expression: (x - y) * (v + w)?






45. Building a linked list forward places the item to be added at the ____ of the linked list.






46. What is the effect of the following expression: rAccessIterator - n?






47. Which statement must be included in a program in order to use a deque container?






48. The _______ member function is common to all containers.






49. vector<int> v (1 - 2); int value = v.back (); cout << value << endl; What is the output of the code fragment above?






50. intStack.push(18); intStack.push(21); intStack.push(25); cout<<tempStack.top()<<"";