题解 | #明明的随机数#
明明的随机数
https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0
#include <stdio.h>
/*解法二:使用哈希表思想*/
int main(void)
{
int size = 0, num = 0;
while(scanf("%d", &size) != EOF)
{
int numList[501] = {0};
while(size--)
{
scanf("%d",&num);
numList[num] = num;
}
for(int i = 0 ; i < 501 ; i ++)
{
if(numList[i] != 0)
{
printf("%d\r\n", numList[i]);
}
}
}
}
哈希表解决方法:利用数字没有存储数量大,直接对号存,按顺序输出,牺牲了空间,开了501个空间,结果占内存296KB
查看3道真题和解析