[算法]随机数
Posted 山寺日高未起僧
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[算法]随机数相关的知识,希望对你有一定的参考价值。
#include <stdio.h> #include <stdlib.h> #include <time.h> //代码功能,随机生成n个随机数,并按升序排序 int main(void) { int i,j,n,t; srand( (unsigned)time( NULL ) ); n = rand() % 100; int arr[n]; printf("Ten random numbers from 0 to 99\n\n"); printf("共生成%d个随机数,分别是:",n); for(i=0; i<n; i++){ arr[i]=rand() % 100; printf("%4d",arr[i]); } printf("从小到大排列为:\n"); for(i=0; i<n; i++){ for(j=0;j<n;j++){ if(arr[i]>arr[j]){ t=arr[i]; arr[i]=arr[j]; arr[j]=t; } } } for(i=0;i<n;i++) printf("%4d",arr[i]); return 0; }
这里生成随机数的关键代码
#include <time.h>
srand( (unsigned)time( NULL ) ); n = rand() % 100;
上述代码中,排序代码也是一个key,这里是用二维数组来遍历每一个元素,及其与其他元素的关系,不断把符合条件的元素与原始数组的第0,1,2...个元素交换。当然,还有其他的排序代码,复杂程度各有不同,以后会更新。
以上是关于[算法]随机数的主要内容,如果未能解决你的问题,请参考以下文章
有人可以解释啥是 SVN 平分算法吗?理论上和通过代码片段[重复]
片段(Java) | 机试题+算法思路+考点+代码解析 2023