Geben Sie beispielsweise "ABC" ein, um alle möglichen Kombinationen zu drucken und doppelte Werte zu beseitigen.
Die sogenannte Anordnungskombination lautet wie folgt:
Arrangement -Kombination, String: ABC
BCA
ACB
ABC
CBA
BAC
Taxi
Anzahl der Anordnung und Kombinationen: 6
Implementierungscode (kombiniert mit Java8 Lambda Expression Implementierung)
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. Starten Sie die Anordnung der Liste <string> sortresult = sort (Eingabe); System.out.println ("Sortierkombination, String:"+Eingabe); // 2. Beseitigen Sie doppelte Spalten Hashset H = neues Hashset (Sortresult); Sortresult.Clear (); Sortresult.addall (h); //3.printout sortresult.foreach (e -> system.out.println (e)); //4.print Anzahl der Drucksysteme.out.println ("Anzahl der Kombinationen anordnen:" + sortresult.size ()); } private list <string> sort (string input) {list <string> sortlist = new ArrayList (); if (input == null || "" .Equals (input)) {System.out.println ("Tipp: Sie haben ein Nullzeichen eingegeben, bitte geben Sie einen gültigen Wert ein!"); return New ArrayList (); } char links char = input.charat (0); if (input.length ()> 1) {String rightstring = input.substring (1, input.length ()); List <String> rightStringSortedList = sort (rightstring); RightStringSortedList.foreach ((e) -> {für (int i = 0; i <e.length ()+1; i ++) {sortList.add (neuer StringBuffer (e) .insert (i, links) .toString ());}}); } else {sortList.add (string.Valueof (links char)); } return sortList; }}Wenn es eine prägnantere Code -Implementierung gibt, seien Sie bitte nicht geizig und posten Sie sie und teilen Sie sie.
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.