#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include<memory.h>
#include <time.h>
#define MAX 10
int mysort(int N,int s, int *a);
void random(int a[], int n) ;
int main(){
const int N = 100 ;//先随机打乱一个数组
const int loopMax = 20 ;
const int s = floor(sqrt((float)(N/2))) -1 ;
//const int s = 4 ;
int loop = 0 ;
int gen = 1 ;
int len = N ;
int a[N] ;
for (int i=0 ;i<N ; i++){
a[i]=i+1;
}
random(a, N);//打乱数组
printf("打乱后的原始数组为:\n") ;
for (int i = 0; i < N; i++)
printf("%d ", a[i]);
len = mysort(N,s,a) ;
printf("len = %d \n", len ) ;
for(int i =0 ;i <N ;i++)
printf("%d\n",a[i]) ;
while(len != 0){
loop = 0 ;
len = N ;
gen ++ ;
for (int i=0 ;i<N ; i++){ //又重新生成一个随机数组
a[i]=i+1;
}
random(a, N);//打乱数组
用C语言实现s随机交织
最新推荐文章于 2023-05-13 14:06:30 发布
本文介绍了如何使用C语言实现一种随机交织的方法。虽然只提供了一次排序的示例,但鼓励读者根据需要自行扩展为多次排序。
摘要由CSDN通过智能技术生成