| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 897 人关注过本帖
标题:C语言整数排列算法求教
只看楼主 加入收藏
tanlinghang
Rank: 1
来 自:四川大学
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-11-1
结帖率:100%
收藏
 问题点数:0 回复次数:4 
C语言整数排列算法求教
如何将N个连续的整数通过C语言 组成N!个不同的排列并输出···· ···唉 我想不出来啊  拜托大家帮忙····
搜索更多相关主题的帖子: C语言 整数 算法 排列 
2008-11-06 21:46
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
收藏
得分:0 
全排列算法
百度百科上应该有

My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2008-11-06 21:58
tanlinghang
Rank: 1
来 自:四川大学
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-11-1
收藏
得分:0 
谢谢前辈···我找到了···虽然看得云里雾里的···但基本能懂···

Only by standing on the shoulder of the giant can I see farther and farther.
2008-11-07 11:49
gzbao9999
Rank: 1
等 级:新手上路
威 望:1
帖 子:40
专家分:0
注 册:2008-11-5
收藏
得分:0 
给你一个 刚学来的一种写法
----------------------------
#include <stdio.h>
#define SWAP(a, b) {int t=a; a=b; b=t;}

int array[10]={0,1,2,3,4,5,6,7,8,9};
int length=10 ;
int time=0;

select1(int ceng)
{
    if(ceng+1==length)
    {
        print();
        return ;
    }
    int i ;
    for(i=ceng;i<length;i++)
    {
        if(i!=ceng)
        SWAP(array[ceng],array[i]);
        select1(ceng+1);
        if(i!=ceng)
        SWAP(array[ceng],array[i]);
    }
}

print()
{
    time++;
    int i ;
    for(i=0;i<length;i++)
    printf("%d,",array[i]);
    printf("\n");
}
}

main()
{
    select1(0);
    printf("time=%d\n",time);
}
2008-11-07 16:38
tanlinghang
Rank: 1
来 自:四川大学
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-11-1
收藏
得分:0 
谢谢楼上啊

Only by standing on the shoulder of the giant can I see farther and farther.
2008-11-07 21:23
快速回复:C语言整数排列算法求教
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025227 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved