
但从概率上说,是有规律的。比如说从1-10选1个数,出现哪一个都有可能,所以叫随机。但选1万次的话,应该每个数都出现数百至一千多次,而不会说1万次都是5.
#include <iostream>void print(int *arr, int length) {
for (int i = 0i <length++i) {
std::cout <<*(arr + i)
}
std::cout <<std::endl
}
void swap(int *arr1, int *arr2) {
int temp = *arr1
*arr1 = *arr2
*arr2 = temp
}
void permutate(int *arr, int length, int *subArr, int subLen) {
if (subLen == 1) { print(arr, length)}
else {
for (int i = 0i <subLen++i) {
swap(subArr, subArr + i)
permutate(arr, length, subArr + 1, subLen - 1)
swap(subArr, subArr + i)
}
}
}
void permutate(int *arr, int length) {
permutate(arr, length, arr, length)
}
int main()
{
int n
std::cout <<"enter a number n: (1 <= n <= 9)" <<std::endl
std::cin >>n
int *arr = new int[n]
for (int i = 0i <n++i) {
arr[i] = i + 1
}
permutate(arr, n)
delete [] arr
return 0
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)