博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
123456789 4位数乘1位数=4位数
阅读量:7005 次
发布时间:2019-06-27

本文共 1185 字,大约阅读时间需要 3 分钟。

package com.epro;

import java.util.ArrayList;
import java.util.List;
public class digui {
    public static void perm(char[] buf, int start, int end) {
        List<Integer> list = new ArrayList<Integer>();
        if (start == end) {// 当只要求对数组中一个字母进行全排列时,只要就按该数组输出即可(特殊情况)
            for (int i = 0; i <= end; i++) {
                // System.out.print(buf[i]);
                list.add(buf[i] - 48);
            }
        } else {// 多个字母全排列(普遍情况)
            for (int i = start; i <= end; i++) {// (让指针start分别指向每一个数)
                char temp = buf[start];// 交换数组第一个元素与后续的元素
                buf[start] = buf[i];
                buf[i] = temp;
                perm(buf, start + 1, end);// 后续元素递归全排列
                temp = buf[start];// 将交换后的数组还原
                buf[start] = buf[i];
                buf[i] = temp;
            }
        }
        if (list.size() != 0) {
            if ((list.get(0) * 1000 + list.get(1) * 100 + list.get(2) * 10 + list
                    .get(3)) * list.get(4) == (list.get(5) * 1000 + list.get(6)
                    * 100 + list.get(7) * 10 + list.get(8))) {
                System.out.println(list.get(0) +""+ list.get(1)+"" + list.get(2)+""
                        + list.get(3) + "*" + list.get(4) + "=" + list.get(5)
                        + list.get(6) + list.get(7) + list.get(8));
            }
        }
    }
    public static void main(String[] args) {
        char[] buf = { '1', '2', '3', '4', '5', '6', '7', '8', '9' };
        perm(buf, 0, buf.length - 1);
        // 1738*4=6952
    }
}

转载于:https://www.cnblogs.com/jugg-mine/p/3475112.html

你可能感兴趣的文章
前端时光机(神技)
查看>>
阿里巴巴普惠体前端应用
查看>>
每周分享第 8 期(20181228)
查看>>
微商怎么引流精准客源微商怎么加好友快速成交
查看>>
计算机网络之网络配置基础
查看>>
GuavaCache入门
查看>>
小猿圈Web前端开发学习路线及建议
查看>>
[译]React函数组件和类组件的差异
查看>>
java版b2b2c社交电商spring cloud分布式微服务(二)服务消费者(rest+ribbon)
查看>>
说说如何利用 Webpack 来搭建 Vue 单文件组件环境
查看>>
前端面试题:斐波那契数列
查看>>
是哪一瞬间让前端们决定入职的?
查看>>
CountDownLatch和CyclicBarrier模拟同时并发请求
查看>>
下沉市场中的新零售,如何抓住“小镇青年”的心
查看>>
java web 人脸识别技术
查看>>
RabbitMQ 与 AMQP路由
查看>>
s闭包(转载)
查看>>
微软整合实验(二):Hyper-V安装和虚拟网络详解
查看>>
linux下解压命令大全
查看>>
Linux学习之CentOS(三十一)--Linux远程管理之SSH、VNC
查看>>