#include #include #include #include #include #define N 1000000 #define MIN_LEN 20 #define MAX_LEN 50 #define MAX_CHAR 'd' bool cmp(char *a, char *b) { return strcmp(a, b) < 0; } int main(void) { srand(time(NULL)); char* s[N]; // Generate some strings for (int i = 0; i < N; i++) { int len = rand() % (MAX_LEN - MIN_LEN + 1) + MIN_LEN; s[i] = (char*) malloc(len + 1); for (int j = 0; j < len; j++) { s[i][j] = rand() % (MAX_CHAR - 'a' + 1) + 'a'; } s[i][len] = '\0'; } std::sort(s, s + N, cmp); // Print them // for (int i = 0; i < N; i++) { // printf("[%s]\n", s[i]); // } }