int main(void) { int a[10]; int i; queue_t *qt; int data; rand_a(a, 10); show_a(a, 10); qt = queue_create(sizeof(int), NULL); printf("=== enqueue ===\n"); for (i = 0; i < 10; i++ ) enqueue(qt, &a[i]); queue_front(qt, &data); printf("front is %d\n", data); printf("=== dequeue ===\n"); //while (!queue_isempty(qt)) { dequeue(qt, &data); printf("%2d ", data); } putchar('\n'); queue_destroy(qt); return 0; }
int main(void) { int a[10]; rand_a(a, 10); print_a(a, 10); printf("max ele is: %d\n", max(a, 10)); printf("min ele is: %d\n", min(a, 10)); printf("shift left 3 eles:\n"); shift_left(a, 10, 3); print_a(a, 10); printf("shift right 3 eles:\n"); shift_right(a, 10, 3); print_a(a, 10); printf("reverse:\n"); reverse(a, 10); print_a(a, 10); printf("sort:\n"); bubble_sort(a, 10); print_a(a, 10); return 0; }
int main(int argc, char *argv[]) { rand_a(); switch (atoi(argv[1])) { case 1: bubble(); break; case 2: swaps(); break; case 3: select(); break; case 4: insert(); break; case 5: qsort(a, MAX, sizeof(int), cmp); break; default: break; } /*show();*/ /*insert();*/ /*bubble();*/ /*select();*/ /*show();*/ return 0; }
int main(void) { int a[10]; int i; stack_t *st; int data; rand_a(a, 10); show_a(a, 10); st = stack_create(sizeof(int), 10, NULL); printf("=== push ===\n"); for (i = 0; i < st->max; i++ ) stack_push(st, &a[i]); int top; stack_top(st, &top); printf("top is %d\n", top); printf("=== pop ===\n"); while (!stack_isempty(st)) { stack_pop(st, &data); printf("%2d ", data); } putchar('\n'); return 0; }
int main(void) { int a[10]; int i; int data; rand_a(a, 10); show_a(a, 10); stack_t *st = stack_create(sizeof(int), NULL); printf("====== push ======\n"); for (i = 0; i < 10; i++) stack_push(st, &a[i]); printf("====== top ======\n"); stack_top(st, &data); printf("top : %d\n", data); printf("====== pop ======\n"); //while (!stack_isempty(st)) { stack_pop(st, &data); printf("%d ", data); } putchar('\n'); stack_destroy(st); return 0; }
int main(int argc, char *argv[]) { rand_a(a, MAX); show_a(a, MAX); quick_sort(a, MAX); show_a(a, MAX); return 0; }
int main(int argc, char *argv[]) { struct node_t *hash_table[10] = {NULL}; struct node_t *tail; int i, indx; struct node_t *n; rand_a(a, MAX); show_a(a, MAX); // insert data for (i = 0; i < 10; i++) { // calculate the index indx = hash(a[i]); n = malloc(sizeof(struct node_t)); // node insert into corresponding index n->data = a[i]; n->next = hash_table[indx]; hash_table[indx] = n; } printf("data insert done!"); int key; int count; printf("pls input the key: "); scanf("%d", &key); indx = hash(key); if (NULL == hash_table[indx]) printf("no found!\n"); else { printf("found, indx = %d\n", indx); for (tail = hash_table[indx], count =0; tail != NULL; tail = tail->next, count++) if (key == tail->data) { printf("this is %d node, tail = %p\n", count, tail); } } return 0; }
int main(int argc, char *argv[]) { int key; rand_a(a, MAX); show_a(a, MAX); qsort(a, MAX, sizeof(int), compare); show_a(a, MAX); printf("pls input key for search: "); scanf("%d", &key); int indx; // indx = binary_search(a, MAX, key); indx = binary_find(a, MAX, key); printf("the indx is %d\n", indx); return 0; }