test/radix_sort_test.cc
changeset 442 31d224a3c0af
parent 441 4f7224faf3bd
child 443 de16f1f2d228
equal deleted inserted replaced
0:95f7abde6360 1:7ac66f832539
     1 /* -*- C++ -*-
     1 /* -*- mode: C++; indent-tabs-mode: nil; -*-
     2  *
     2  *
     3  * This file is a part of LEMON, a generic C++ optimization library
     3  * This file is a part of LEMON, a generic C++ optimization library.
     4  *
     4  *
     5  * Copyright (C) 2003-2008
     5  * Copyright (C) 2003-2008
     6  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
     6  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
     7  * (Egervary Research Group on Combinatorial Optimization, EGRES).
     7  * (Egervary Research Group on Combinatorial Optimization, EGRES).
     8  *
     8  *
    79     radixSort(data2.begin(), data2.end(), negate);
    79     radixSort(data2.begin(), data2.end(), negate);
    80     for (int i = 0; i < n; ++i) {
    80     for (int i = 0; i < n; ++i) {
    81       check(data1[i] == data2[n - 1 - i], "Test failed");
    81       check(data1[i] == data2[n - 1 - i], "Test failed");
    82     }
    82     }
    83 
    83 
    84   } 
    84   }
    85   
    85 
    86   {
    86   {
    87     std::vector<unsigned char> data1(n);
    87     std::vector<unsigned char> data1(n);
    88     generateCharSequence(n, data1);
    88     generateCharSequence(n, data1);
    89 
    89 
    90     std::vector<unsigned char> data2(data1);
    90     std::vector<unsigned char> data2(data1);
   119 
   119 
   120     counterSort(data2.begin(), data2.end(), negate);
   120     counterSort(data2.begin(), data2.end(), negate);
   121     for (int i = 0; i < n; ++i) {
   121     for (int i = 0; i < n; ++i) {
   122       check(data1[i] == data2[n - 1 - i], "Test failed");
   122       check(data1[i] == data2[n - 1 - i], "Test failed");
   123     }
   123     }
   124   } 
   124   }
   125 
   125 
   126   {
   126   {
   127     std::vector<unsigned char> data1(n);
   127     std::vector<unsigned char> data1(n);
   128     generateCharSequence(n, data1);
   128     generateCharSequence(n, data1);
   129 
   129 
   138   }
   138   }
   139 }
   139 }
   140 
   140 
   141 int main() {
   141 int main() {
   142 
   142 
   143   checkRadixSort();  
   143   checkRadixSort();
   144   checkCounterSort();
   144   checkCounterSort();
   145 
   145 
   146   return 0;
   146   return 0;
   147 }
   147 }