42 Lecture
CS304
Midterm & Final Term Short Notes
ITERATORS
Iterators are objects used to traverse through the elements of a container, such as an array or a list, and perform various operations on them. They provide a way to access the data stored in a container without exposing its internal representat
Important Mcq's
Midterm & Finalterm Prepration
Past papers included
Download PDF
Which of the following is NOT a type of iterator in C++? a) Forward iterator b) Backward iterator c) Input iterator d) Random access iterator Answer: b) Backward iterator Which of the following is a feature of a forward iterator? a) Can move in both directions b) Can be used to modify the elements in a container c) Can access the elements of a container multiple times d) Can only move forward in a container Answer: d) Can only move forward in a container Which of the following is an example of a container that supports random access iterators? a) Linked list b) Queue c) Array d) Set Answer: c) Array What is the purpose of an output iterator? a) To iterate through a container in reverse order b) To modify the elements in a container c) To read the elements in a container d) To write data to a container Answer: d) To write data to a container Which of the following is an example of a bidirectional iterator? a) Stack b) Deque c) Forward list d) Map Answer: b) Deque What is the complexity of the operator++() function for a random access iterator? a) O(n) b) O(log n) c) O(1) d) O(n^2) Answer: c) O(1) Which of the following algorithms require a random access iterator? a) std::sort() b) std::transform() c) std::reverse() d) std::unique() Answer: a) std::sort() Which of the following is a characteristic of an input iterator? a) Can be used to modify the elements in a container b) Can only access the elements of a container once c) Can move in both directions d) Can skip elements in a container Answer: b) Can only access the elements of a container once Which of the following is an example of a container that supports bidirectional iterators? a) Hash table b) Binary search tree c) Vector d) Queue Answer: b) Binary search tree Which of the following is an example of a container that supports forward iterators? a) Stack b) Map c) Linked list d) Set Answer: c) Linked list
Subjective Short Notes
Midterm & Finalterm Prepration
Past papers included
Download PDF
What is an iterator in C++? Answer: An iterator in C++ is an object used to traverse through the elements of a container and perform operations on them. What is the purpose of an iterator? Answer: The purpose of an iterator is to provide a way to access the data stored in a container without exposing its internal representation, making the container more flexible and reusable. What is the difference between an input iterator and an output iterator? Answer: An input iterator is used to read data from a container, while an output iterator is used to write data to a container. What is the difference between a forward iterator and a bidirectional iterator? Answer: A forward iterator can only move forward in a container, while a bidirectional iterator can move both forward and backward. What is the difference between a random access iterator and a bidirectional iterator? Answer: A random access iterator provides constant time access to any element in a container, while a bidirectional iterator only provides constant time access to the next or previous element. How is the complexity of an iterator defined? Answer: The complexity of an iterator is defined by the amount of time it takes to perform certain operations, such as incrementing or decrementing the iterator. What is the difference between a container and an iterator? Answer: A container is a data structure that stores elements, while an iterator is an object used to traverse through the elements of a container. What is the purpose of the std::begin() and std::end() functions? Answer: The std::begin() function returns an iterator pointing to the first element in a container, while the std::end() function returns an iterator pointing to the end of the container. What is the difference between a constant iterator and a regular iterator? Answer: A constant iterator is used to iterate through a container without allowing modifications to the elements, while a regular iterator allows modifications to the elements. How are iterators used in algorithms from the Standard Template Library? Answer: Iterators are used as arguments to algorithms in the Standard Template Library to specify which elements in a container to operate on.