zoukankan      html  css  js  c++  java
  • (原创)java 输出排列组合,’4‘ 不能在第三位,‘3’,‘5’不能相连。

     1 package karl.test;
     2 
     3 import java.util.Iterator;
     4 import java.util.Set;
     5 import java.util.TreeSet;
     6 
     7 public class Test {
     8     private static Set<String> set = new TreeSet<String>();
     9 
    10     public static String sort(String prex, String str) {
    11         boolean flag = true;
    12         int len = str.length();
    13         if (str.length() == 1) {
    14             set.add(prex + str);
    15             flag = false;
    16             return prex + str;
    17         }
    18 
    19         for (int i = 0; i < len; i++) {
    20             String reststr = str.substring(0, i) + str.substring(i + 1, len);
    21             prex += str.charAt(i);
    22             sort(prex, reststr);
    23             if (flag) {
    24                 prex = prex.substring(0, prex.length() - 1);
    25                 flag = true;
    26             }
    27         }
    28         return null;
    29     }
    30 
    31     public static void main(String[] args) {
    32         String str = "122345";
    33         sort("", str);
    34         Iterator<String> it = set.iterator();
    35         while (it.hasNext()) {
    36             String next = it.next();
    37             if (next.contains("35") || next.contains("53")
    38                     || (next.charAt(3) == '4')) {
    49 
    40             } else {
    41                 System.out.println(next);
    42             }
    43         }
    44     }
    45 }
  • 相关阅读:
    react 组件传值
    vue 子组件如何修改父组件data中的值??????????????????
    移动端的一些初始化 css 样式。。。
    centos7命令
    poi导出
    eclipse项目导入工作空间提示已存在问题
    maven jar包冲突问题
    layui下拉框渲染问题,以及回显问题
    两个线程交替运行——使用synchronized+wait+notify实现
    造成索引失效的情况
  • 原文地址:https://www.cnblogs.com/zhonghan/p/2235147.html
Copyright © 2011-2022 走看看