黑马程序员技术交流社区

标题: 有关排列组合的问题 [打印本页]

作者: Akm    时间: 2012-2-11 16:29
标题: 有关排列组合的问题
将“1067703136”排列组合有多少种情况?分别是?请附上编程代码
作者: 尹旗龙    时间: 2012-2-11 21:09
你是说用两个0两个1两个3两个6两个7排列组合?
作者: 张建银    时间: 2012-2-11 22:07
结果应该是8*7*6*6*4*3*2*1  这个好像是数学题 随便判断下 就能出来吧
作者: 马欢    时间: 2012-2-11 22:21
能不能说具体点,就是要求说明白点。
作者: Akm    时间: 2012-2-12 10:32
张建银 发表于 2012-2-11 22:07
结果应该是8*7*6*6*4*3*2*1  这个好像是数学题 随便判断下 就能出来吧

差不是数学题 怎么转换成编程,用数学的编程思想,来让计算机来运算。。
作者: 张平    时间: 2012-2-12 11:20
public class A {
        public static void main(String[] args) {
                A a = new A();
                System.out.println("排列组合的总个数:" + a.permutation(10, 2));
        }
        //求组合
        //这里只写了一个满足该种方案的组合求法,不满足其它类型组合求法,通用排列组合方式的求法网上有别人写的
        public static double permutation(int n, int r) {
                double result = 1;
                int k = (n/2)-1;
                //System.out.println(Math.pow(r, k));
                result = factorial(n)/(Math.pow(r, k));
                return result;
        }
        // 求阶乘方法
        public static int factorial(int num) {
            int result = 1;
            for(int i = 1; i <= num; i++) {
                result *= i;
            }
            //System.out.println(result);
            return result;
        }
        //每一种组合方式的输出
        //因为这个输出结果较多,高达20万个,这里就不作这个方法了
        public static void printInfomation() {
               
        }
}

新建 Kankan BMP 图像.jpg (1.4 MB, 下载次数: 2)

新建 Kankan BMP 图像.jpg

作者: 张平    时间: 2012-2-12 11:23
file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image002.jpg




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2