利用 s-random interleaver得到1024个数字排列


关于原理,可以参考我的另一篇文章:http://blog.csdn.net/bjq1016/article/details/8795666

L_total = 1024 ;
s=fix(sqrt(L_total/2)) ;
alpha = gen_alpha(L_total,s) ;

function alpha = gen_alpha(N,s)
% disp('genarate alpha============================')
% N=1024;%
loopMax = N/2;%利用冒泡算法最大循环次数,
%超过次数则重新产生随机序列
% s=fix( sqrt(N/2) ) ;
len =N ;
genTime=0;

while(len~=0)
    len = N;%满足要求的序列长度
    genTime = genTime+1 ;
    loop = 0;%有些随机序列无法通过重组满足,限定一个上限
    [~ ,a]=sort( rand( 1,N) ) ;
    while (len ~= 0 &&loop <loopMax )     
     [len, out ] =mysort_new (N,s,a) ;
     a = out ;
     loop = loop +1;
    end
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值