Mercurial > Algorithms__Sedgewick
comparison algs4-c++/src/RandomQueue.cpp @ 27:80ca1973e3bd
Fleshed out Queue::generic_iterator a bit more to make it a more or less complete example of implmenting an iterator.
author | Eris Caffee <discordia@eldalin.com> |
---|---|
date | Tue, 23 Jun 2015 17:14:09 -0500 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:3adf3a7ba9c1 |
---|---|
1 // g++ -std=c++11 RandomQueue.cpp | |
2 | |
3 #include <iostream> | |
4 | |
5 #include "RandomQueue.hpp" | |
6 | |
7 int main ( int argc, char **argv ) { | |
8 | |
9 RandomQueue<long> q; | |
10 | |
11 long i; | |
12 while ( ! std::cin.eof() ) { | |
13 std::cin >> i; | |
14 if ( std::cin.good() ) { | |
15 q.enqueue(i); | |
16 } | |
17 } | |
18 | |
19 std::cout << "RandomQueue has " << q.size() << " entries." << std::endl; | |
20 | |
21 for ( auto iter = q.begin(); iter != q.end(); ++iter ) { | |
22 std::cout << *iter << std::endl; | |
23 } | |
24 | |
25 std::cout << "Sampling entries." << std::endl; | |
26 | |
27 for ( int i; i < q.size(); ++i ) { | |
28 std::cout << q.sample() << std::endl; | |
29 } | |
30 | |
31 std::cout << "Removing entries entries..." << std::endl; | |
32 | |
33 while ( ! q.is_empty() ) { | |
34 i = q.dequeue(); | |
35 std::cout << i << std::endl; | |
36 } | |
37 | |
38 std::cout << "Q has " << q.size() << " entries." << std::endl; | |
39 | |
40 } | |
41 |