成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

java算法之字符組合排序

開發(fā) 后端 算法
Java算法包括冒泡排序,選擇排序等。本文主要介紹的是字符組合排序,通過例子的形式,向大家說明字符組合排序的重點和難點。供參考。

Java字符組合排序,不是特別難的題目,暴力算和用圖論算(深度遍歷)都可以,結(jié)果是198.圖論的話就是構(gòu)造無向圖,然后深度優(yōu)先遞歸。
題目:用1、2、2、3、4、5這六個數(shù)字,用java寫一個main函數(shù),打印出所有不同的排列,如:512234、412345等,要求:"4"不能在第三位,"3"與"5"不能相連。

java代碼:

 

  1. package com.graphic;  
  2. import java.util.Iterator;  
  3. import java.util.TreeSet;  
  4. public class CharSequence {  
  5. private String[] c = {"1","2","2","3","4","5"};  
  6. private int n = c.length;  
  7. private boolean[] visited = new boolean[n];  
  8. private int[][] g = new int[n][n];  
  9. private TreeSet ts = new TreeSet();  
  10. private String result = "";  
  11. public CharSequence(){  
  12. for(int i=0; i  
  13. for(int j=0; j  
  14. if(i == j) g[i][j] = 0;  
  15. else g[i][j] = 1;  
  16. }  
  17. }  
  18. g[3][5] = 0;  
  19. g[5][3] = 0;  
  20. }  
  21. public void depthFirst(int index){  
  22. visited[index] = true;  
  23. result += c[index];  
  24. if(result.length() == n){  
  25. ts.add(result);  
  26. resultresult = result.substring(0,result.length()-1);  
  27. visited[index] = false;  
  28. }  
  29. else{  
  30. for(int i=0; i  
  31. if(!visited[i] && g[index][i] == 1){  
  32. depthFirst(i);  
  33. }else continue;  
  34. }  
  35. resultresult = result.substring(0,result.length()-1);  
  36. visited[index] = false;  
  37. }  
  38. }  
  39. public void graphicGet(){  
  40. for(int i=0; i  
  41. depthFirst(i);  
  42. }  
  43. int count = 0;  
  44. System.out.print("圖論的結(jié)果:");  
  45. Iterator it = ts.iterator();  
  46. while(it.hasNext()){  
  47. String tmp = it.next();  
  48. if(tmp.contains("35")) continue;  
  49. if(tmp.contains("53")) continue;  
  50. if(tmp.charAt(3) == '4') continue;  
  51. System.out.println(tmp);  
  52. count++;  
  53. }  
  54. System.out.println("共計:"+count+"個");  
  55. }  
  56. public void bruteForce(){  
  57. System.out.println("暴力搜的結(jié)果:");  
  58. int count = 0;  
  59. for(int i = 122345; i<543222; i++){  
  60. String tmp = ""+i;  
  61. if(tmp.charAt(3) == '4') continue;  
  62. if(tmp.contains("35")) continue;  
  63. if(tmp.contains("53")) continue;  
  64. if(tmp.contains("5") && tmp.contains("4") && tmp.contains("3") && tmp.contains("1"))  
  65. {  
  66. int index = tmp.indexOf("2");  
  67. if(index == -1) continue;  
  68. if(index == tmp.length()-1) continue;  
  69. if(tmp.substring(index+1).contains("2")){  
  70. System.out.println(tmp);  
  71. count++;  
  72. }  
  73. }  
  74. }  
  75. System.out.print("共計:"+count+"個");  
  76. }  
  77. public void recrusive(){  
  78. }  
  79. public static void main(String[] args) {  
  80. CharSequence cs = new CharSequence();  
  81. //圖論的方法  
  82. cs.graphicGet();  
  83. //暴力搜索  
  84. cs.bruteForce();  
  85. }  

 

 通過例子,希望會對你有幫助。下面一篇將要介紹Java排序算法總結(jié)。

【編輯推薦】

  1. 淺談Java讀取Csv實踐
  2. 三種常見的Java應(yīng)用性能挑戰(zhàn)
  3. 用Java做互聯(lián)網(wǎng)開發(fā)優(yōu)勢何在?
  4. Java多線程程序設(shè)計詳細解析
責(zé)任編輯:于鐵 來源: 幫考網(wǎng)
相關(guān)推薦

2021-01-19 07:02:26

算法數(shù)據(jù)結(jié)構(gòu)堆排序

2021-11-05 22:47:44

冒泡排序選擇插入

2022-11-21 07:58:10

Java排序冒泡排序

2021-06-09 09:06:52

Go語言算法

2021-08-04 08:56:34

語言Go排序

2009-08-11 09:19:52

C#選擇排序C#算法

2011-04-20 10:58:34

Java

2011-04-20 13:56:08

選擇排序

2011-04-20 14:19:00

希爾排序

2011-04-20 14:07:37

冒泡排序

2011-04-20 15:06:44

堆排序

2011-04-20 15:20:03

快速排序

2022-01-06 16:20:04

Java排序算法排序

2011-04-20 12:49:44

插入排序

2011-04-20 14:29:07

歸并排序

2022-04-06 08:58:39

歸并排序Go算法

2011-04-20 16:05:15

基數(shù)排序

2017-05-10 16:01:39

推薦系統(tǒng)算法實踐

2014-08-13 11:04:02

搜索引擎排序算法

2020-03-27 09:06:54

選擇排序算法冒泡排序
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 在线看91 | 免费v片在线观看 | 欧美久久精品一级黑人c片 91免费在线视频 | 一区二区三区免费 | 在线观看成人精品 | 久久国产精品色av免费观看 | 日本超碰| 麻豆久久久久久久 | 91高清免费 | 精品国产一区二区三区久久 | 国产精品激情小视频 | 国产精品91网站 | 国产精品综合 | 国产福利视频 | 99re视频这里只有精品 | 一二三区av | 亚洲欧美在线一区 | 91性高湖久久久久久久久_久久99 | 亚洲a视频 | 成年人在线视频 | 成人午夜精品一区二区三区 | 欧美一区二区 | 久久久久久成人 | av手机在线 | 免费观看av| 国产一区二区三区四区在线观看 | 国产小视频在线观看 | 宅女噜噜66国产精品观看免费 | 99亚洲精品 | 作爱视频免费看 | av免费在线播放 | 精品国产亚洲一区二区三区大结局 | 久久久久久免费看 | 国产福利91精品一区二区三区 | 韩日在线视频 | 五月婷婷 六月丁香 | 国产精品免费看 | 欧美一区二区三区在线观看视频 | 一a级片 | 久久精品亚洲精品 | 青青草原精品99久久精品66 |