隨機生成10個100之內的整數,把數據從小到大排序,並且算法複雜度只能是1(利用數組的索引也可...

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define random(x) (rand()%x)
int main(void)
{
    int lengthA, lengthB, i;
	int wait;
    
	int arrayA[10]; // 定義一個數組
	int arrayB[101];
	srand(time(NULL)); // 讓每次產生的隨機數都不同
	lengthA = sizeof(arrayA) / sizeof(arrayA[0]);
	lengthB = sizeof(arrayB) / sizeof(arrayB[0]);
	for(i = 0; i < 10; i++)
		arrayA[i] = random(100);
	printf("隨機生成的數組A的元素爲 \n");
	for(i = 0; i < 10; i++)
		printf("%d\n", arrayA[i]);
	for (i = 0; i < lengthA; i++)
    {
        arrayB[arrayA[i]] = 101;
    }
	printf("排序後的結果爲\n");
	for (i = 0; i < lengthB; i++)
    {
        if (arrayB[i] == 101)
            printf("%d\n", i);
    }
	scanf("%d", &wait);
	return 0;
}
相關文章
相關標籤/搜索