中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      java算法字符組合排序

      時間:2024-07-02 14:50:54 JAVA認證 我要投稿
      • 相關推薦

      java算法字符組合排序

        為幫助同學們學好java算法,yjbys小編為大家分享最新java算法——字符組合排序試題和答案如下:

        題目:

        用1、2、2、3、4、5這六個數字,用java寫一個main函數,打印出所有不同的排列,如:512234、412345等,要求:"4"不能在第三位,"3"與"5"不能相連。

        不是特別難的題目,暴力算和用圖論算(深度遍歷)都可以,結果是198.圖論的話就是構造無向圖,然后深度優先遞歸。

        package com.graphic;

        import java.util.Iterator;

        import java.util.TreeSet;

        public class CharSequence {

        private String[] c = {"1","2","2","3","4","5"};

        private int n = c.length;

        private boolean[] visited = new boolean[n];

        private int[][] g = new int[n][n];

        private TreeSetts = new TreeSet();

        private String result = "";

        public CharSequence(){

        for(int i=0; i

        for(int j=0; j

        if(i == j) g[i][j] = 0;

        else g[i][j] = 1;

        }

        }

        g[3][5] = 0;

        g[5][3] = 0;

        }

        public void depthFirst(int index){

        visited[index] = true;

        result += c[index];

        if(result.length() == n){

        ts.add(result);

        result = result.substring(0,result.length()-1);

        visited[index] = false;

        }

        else{

        for(int i=0; i

        if(!visited[i] && g[index][i] == 1){

        depthFirst(i);

        }else continue;

        }

        result = result.substring(0,result.length()-1);

        visited[index] = false;

        }

        }

        public void graphicGet(){

        for(int i=0; i

        depthFirst(i);

        }

        int count = 0;

        System.out.print("圖論的結果:");

        Iteratorit = ts.iterator();

        while(it.hasNext()){

        String tmp = it.next();

        if(tmp.contains("35")) continue;

        if(tmp.contains("53")) continue;

        if(tmp.charAt(3) == '4') continue;

        System.out.println(tmp);

        count++;

        }

        System.out.println("共計:"+count+"個");

        }

        public void bruteForce(){

        System.out.println("暴力搜的結果:");

        int count = 0;

        for(int i = 122345; i<543222; i++){

        String tmp = ""+i;

        if(tmp.charAt(3) == '4') continue;

        if(tmp.contains("35")) continue;

        if(tmp.contains("53")) continue;

        if(tmp.contains("5") && tmp.contains("4") && tmp.contains("3") && tmp.contains("1"))

        {

        int index = tmp.indexOf("2");

        if(index == -1) continue;

        if(index == tmp.length()-1) continue;

        if(tmp.substring(index+1).contains("2")){

        System.out.println(tmp);

        count++;

        }

        }

        }

        System.out.print("共計:"+count+"個");

        }

        public void recrusive(){

        }

        public static void main(String[] args) {

        CharSequence cs = new CharSequence();

        //圖論的方法

        cs.graphicGet();

        //暴力搜索

        cs.bruteForce();

        }

        }

      【java算法字符組合排序】相關文章:

      java五種排序算法匯總07-18

      關于Java的字符轉換08-28

      常見的php排序算法07-24

      PHP中strnatcmp()函數“自然排序算法”進行字符串比較用法分析06-06

      關于Java入門的字符型數據10-28

      關于JAVA字符串的拼接與性能06-07

      關于Java通用權限控制的算法06-07

      Java認證基礎知識:java字符串轉化整型問題07-21

      Java編程中如何實現中文排序08-13

      四種簡單的排序算法的php實現10-18

      主站蜘蛛池模板: 亚洲精品一区二区三区免费观看| 国产精品自拍资源网在线观看| 亚洲区1区3区4区中文字幕码| 中文字幕亚洲乱码熟女在线| 动漫av纯肉无码av在线播放| 最新日韩精品视频在线| 免费人成视频网站在线| 亚洲国产成人aⅴ毛片大全| 一区二区三区婷婷中文字幕| 哈密市| 中文字幕一区二区三区在线视频| 国产在线欧美日韩精品一区二区| 抚松县| 海原县| 超碰自拍成人在线观看| 国产美女胸大一区二区三区| 国产免费三级三级三级| 久久免费精品视频老逼| 老熟女一区二区免费| 国产精品一区二区三区色| 钟祥市| 焉耆| 共和县| 亚洲网站免费看| 亚洲国产福利成人一区二区| 国产传媒在线视频| 国产av综合一区二区三区最新 | 日韩av二区三区一区| 国产av专区一区二区三区| 亚洲一区二区三区无吗| 午夜影院91| 亚洲日本在线中文字幕| 另类人妖在线观看一区二区| av无码电影一区二区三区| 津南区| 97精品国产高清自在线看超| 成人国产精品免费网站| 99久久免费精品色老| 人妻无码ΑV中文字幕久久琪琪布 国产日产久久福利精品一区 | 狠狠色噜噜狠狠狠狠97俺也去| 亚洲婷婷综合色香五月|