Example #1
0
int main(int argc, char** argv) 
{
    srandom(time(NULL));
    int* phone_number = alloca((DEF_MAX_NUMBER-DEF_MIN_NUMBER) * sizeof(int));
    for (int i=DEF_MIN_NUMBER; i<DEF_MAX_NUMBER; i++) {
        phone_number[i-DEF_MIN_NUMBER] = i;
    }
    printf("init: \n");
    for (int i=DEF_MIN_NUMBER; i<DEF_MAX_NUMBER; i++) {
        printf("%d ", phone_number[i-DEF_MIN_NUMBER]);
    }
    printf("\n\n");

    unorder(phone_number, DEF_MAX_NUMBER-DEF_MIN_NUMBER);
    printf("unorder: \n");
    for (int i=DEF_MIN_NUMBER; i<DEF_MAX_NUMBER; i++) {
        printf("%d ", phone_number[i-DEF_MIN_NUMBER]);
    }

    printf("\n\n");

    printf("order: \n");
    bitmap_sort(phone_number, DEF_MAX_NUMBER-DEF_MIN_NUMBER);

    return 0;
}
Example #2
0
void test_anagrams(){
  strings_l test {"le", "chien", "marche", "vers", "sa", "niche", "et", "trouve", "une", "limace",
      "de", "chine", "nue", "pleine", "de", "malice", "qui", "lui", "fait", "du", "charme"};
  std::vector<strings_l> res {{"nue", "une"}, {"limace", "malice"}, {"marche", "charme"},
								      {"chien", "niche", "chine"}};
  std::cout << (unorder(anagrams(test))==unorder(res)) << '\n';
  test = {"aba", "baa", "abb"};
  res = {{"aba", "baa"}};
  std::cout << (unorder(anagrams(test))==unorder(res)) << '\n';
  test = {"aba"};
  res = {};
  std::cout << (unorder(anagrams(test))==unorder(res)) << '\n';
  test = {};
  res = {};
  std::cout << (unorder(anagrams(test))==unorder(res)) << '\n';
}