CHAPTER11-12.cpp
上传用户:fjc899
上传日期:2007-07-03
资源大小:187k
文件大小:1k
源码类别:

STL

开发平台:

C/C++

  1. //文件名:CHAPTER11-12.cpp
  2. #include <vector>
  3. #include <algorithm>
  4. #include <functional>
  5. #include <iostream>
  6. int main( ) 
  7. {
  8.    using namespace std;
  9.    vector <int> v1;
  10.    vector <int>::iterator Iter1, Iter2;
  11.    int i;
  12.    for ( i = 1 ; i <= 9 ; i++ )
  13.    {      v1.push_back( i );   }
  14.    random_shuffle( v1.begin( ), v1.end( ) );
  15.    cout << "The original version of vector v1 is: ( " ;
  16.    for ( Iter1 = v1.begin( ) ; Iter1 != v1.end( ) ; Iter1++ ) cout << *Iter1 << " ";
  17.    cout << ")." << endl;
  18.    // Shuffled once
  19.    random_shuffle( v1.begin( ), v1.end( ));
  20.    push_heap( v1.begin( ), v1.end( ) );
  21.    cout << "Vector v1 after one shuffle is:       ( " ;
  22.    for ( Iter1 = v1.begin( ) ; Iter1 != v1.end( ) ; Iter1++ ) cout << *Iter1 << " ";
  23.    cout << ")." << endl;
  24.    // Shuffled again
  25.    random_shuffle( v1.begin( ), v1.end( ));
  26.    push_heap( v1.begin( ), v1.end( ) );
  27.    cout << "Vector v1 after another shuffle is:   ( " ;
  28.    for ( Iter1 = v1.begin( ) ; Iter1 != v1.end( ) ; Iter1++ ) cout << *Iter1 << " ";
  29.    cout << ")." << endl;
  30. }