首页 新闻 会员 周边

一个算法不懂,求解释。

0
悬赏园豆:10 [已关闭问题] 关闭于 2013-12-01 13:30

康托展开式逆运算,求详细的解释。

/*  康托展开的逆运算. 
    {1...n}的全排列,中的第k个数为s[]  */  
void invKT(int n, int k, int s[])  
{  
    int i, j, t, vst[8]={0};  
    k--;  
    for (i=0; i<n; i++)  
    {  
        t = k/fac[n-i-1];  
        for (j=1; j<=n; j++)  
            if (!vst[j])  
            {  
                if (t == 0) break;  
                t--;  
            }  
        s[i] = j;  
        vst[j] = 1;  
        k %= fac[n-i-1];  
    }  
}  
lzyer的主页 lzyer | 初学一级 | 园豆:130
提问于:2013-11-05 19:21
< >
分享
所有回答(1)
0

你确定你的代码贴完了?

幻天芒 | 园豆:37175 (高人七级) | 2013-11-05 19:41

只有一部分  康托展开的逆运算算法。

支持(0) 反对(0) lzyer | 园豆:130 (初学一级) | 2013-11-05 21:20
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册