Par exemple, entrez "ABC" pour imprimer toutes les combinaisons possibles et éliminer les valeurs en double.
La soi-disant combinaison d'arrangement est la suivante:
Combinaison d'arrangement, chaîne: ABC
BCA
ACB
abc
CBA
bac
taxi
Nombre d'arrangements et de combinaisons: 6
Code d'implémentation (combiné avec Java8 Lambda Expression implémentation)
import org.junit.test; import java.util.arraylist; import java.util.hashset; import java.util.list; public class test2 {@test public void test3 () {String input = "ABC"; // 1. Commencez à organiser la liste <string> sortreSult = tri (entrée); System.out.println ("Tri Combination, String:" + Input); // 2. Éliminez les colonnes en double Hashset h = new hashset (Sortrersult); Sortresult.Clear (); Sortrelt.Addall (H); //3.printout SORTRESULT.ForEach (e -> System.out.println (e)); //4. } private list <string> tri (string input) {list <string> sortList = new ArrayList (); if (input == null || "" .equals (input)) {System.out.println ("Tip: vous avez entré un caractère nul, veuillez entrer une valeur valide!"); return new ArrayList (); } char Leftchar = input.charat (0); if (input.length ()> 1) {string rightString = input.substring (1, input.length ()); List <string> rightStringSortEdList = Sort (droiteString); RightStringSortedList.ForEach ((e) -> {for (int i = 0; i <e.length () + 1; i ++) {sortList.add (new StringBuffer (e) .Insert (i, LeftChar) .toString ());}}); } else {sortList.add (string.valueof (LeftChar)); } return sortList; }}S'il y a une implémentation de code plus concise, veuillez ne pas être avare et le publier et le partager.
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.