Ejemplo n.º 1
0
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;
}
Ejemplo n.º 2
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;
}
Ejemplo n.º 3
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;
}
Ejemplo n.º 4
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;
}
Ejemplo n.º 5
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;
}
Ejemplo n.º 6
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;
}
Ejemplo n.º 7
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;
}
Ejemplo n.º 8
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;
}