日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

按要求罗列所有字符串字符序列

發(fā)布時(shí)間:2025/5/22 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 按要求罗列所有字符串字符序列 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

描述

針對(duì)1、2、2、3、4、5這6個(gè)數(shù)字,編寫一個(gè)函數(shù),打印出所有不同的排列,要求4不能排第三位,3和5不能相連。

?

分析

可以利用圖的深度遍歷。

3和5不能相連 - 意味圖中3和5不直連。?

4不能排第三位 - 這個(gè)可以在遍歷后做判斷。

注意:由于題中6個(gè)數(shù)有重復(fù),故遍歷時(shí)是有重復(fù)的序列的,故使用了set過濾了重復(fù)的元素。

?

代碼

import java.util.HashSet; import java.util.Iterator; import java.util.Set;public class Test {private int[] numbers = {1, 2, 2, 3, 4, 5};private int n = numbers.length;private boolean[] visited = new boolean[n];private int[][] graph = new int[n][n];private String combination = "";public Set<String> getAllCombinations() {buildGraph();Set<String> set=new HashSet<String>();for(int i=0;i<n;i++){this.depthFirstSearch(i,set); //每個(gè)節(jié)點(diǎn)都出發(fā)一遍 }return set;}/** 從start節(jié)點(diǎn)開始深度遍歷* */private void depthFirstSearch(int start,Set<String> set){visited[start]=true;combination=combination+numbers[start];if(combination.length()==n){if(combination.indexOf("4")!=2)set.add(combination);}else{for(int j=0;j<n;j++){if(graph[start][j]==1&&visited[j]==false)depthFirstSearch(j,set);}}combination=combination.substring(0,combination.length()-1); //[0,length()-1)visited[start]=false;}/** 建圖* */public void buildGraph() {for (int i = 0; i < n; i++) {for (int j = 0; j < n; j++) {if (i == j)graph[i][j] = 0;elsegraph[i][j] = 1;}}//確保3到5無連線graph[3][5] = 0;graph[5][3] = 0;}public static void main(String[] args) {Test test=new Test();Set<String> set=test.getAllCombinations();Iterator<String> iter=set.iterator();while(iter.hasNext()){System.out.println(iter.next());}} }

?

轉(zhuǎn)載于:https://www.cnblogs.com/zadomn0920/p/6361455.html

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的按要求罗列所有字符串字符序列的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。