1 static const size_t N = 100000;
2 static const size_t MaxLen = 100;
3 static const char range[] = "abcdefghijklmnopqrstuvwxyz_0123456789";
4
5 struct rnd_gen
6 {
7 char operator()() const
8 {
9 return range[std::rand() % (_countof(range) - 1)];
10 }
11 };
12
13 std::vector<std::string> v(N);
14 for(int i=0; i<N; ++i)
15 {
16 std::generate_n(
17 std::back_inserter(v[i]),
18 std::rand() % MaxLen + 1, rnd_gen());
19 }
20 {
21 boost::timer t;
22 std::sort(v.begin(), v.end());
23 std::cout << "Sort: " << t.elapsed() << std::endl;
24 }
25 {
26 boost::timer t;
27 std::string result = boost::algorithm::join(v, ",");
28 std::cout << "Join: " << t.elapsed() << std::endl;
29 }
'정보 공유터' 카테고리의 다른 글
| [C++0x] r-vaule reference: 파라미터의 const 속성 없애기!? (1) | 2010/07/30 |
|---|---|
| [C++] r-value vs. l-value (1) | 2010/07/25 |
| [Apache] 찾을 수 없습니다. (3) | 2010/07/22 |
| [C++] r-value Reference: Performance (2) | 2010/07/13 |
| [C++] 임의의 이름의 변수 만들기 (0) | 2010/05/27 |
| [C++] 지연 호출(Deferred Functional Call) 구현 (0) | 2010/05/15 |
| [C++] Visual Studio 2010, GCC 4.5.0 Released (2) | 2010/04/21 |
