Algorithmus Idee: Sortieren nach einzelnen Ziffern, zehn Ziffern ... wiederum. Jeder POS verfügt über einen Allokationsprozess und einen Sammelprozess. Array [i] [0] zeichnet die Anzahl der Daten in der i-ten Zeile fest.
Paketsortierung;/*** Kardinalitätsart* durchschnittlich O (d (n+r)), bestes o (d (n+r)), schlechtestes o (d (n+r)); Raumkomplexität O (N+R); stabil; Komplexer * d ist die Anzahl der Ziffern, R ist die Anzahl der verknüpften Listen nach Zuweisung * @author Zeng * */public class radixsort {// pos = 1 repräsentiert einstellige Ziffern, pos = 2 repräsentiert zehn Ziffern öffentlich statische statische statische Int -Getnuminpos (int num, int) {int tmp = 1; tmp) % 10;} // Finden Sie die maximale Ziffern dpublic static int getmaxWeishu (int [] a) {int max = a [0]; für (int i = 0; i <a.länge; i ++) {if (a [i]> max) max = a [i];}; tmp! = 1; pos <= d; col <= array [row] [0]; GetMaxWeishu (a)); für (int i: a) system.out.print (i + "");}}Achten Sie auf die laufenden Ergebnisse:
Zusammenfassen
Das obige ist der Inhalt dieses Artikels über die Implementierung des Cardinality -Sortiercode für die Implementierung von Java -Sprache. Ich hoffe, es wird für alle hilfreich sein. Interessierte Freunde können weiterhin auf andere Java-bezogene Themen auf dieser Website verweisen. Wenn es Mängel gibt, hinterlassen Sie bitte eine Nachricht, um darauf hinzuweisen. Vielen Dank an Freunde für Ihre Unterstützung für diese Seite!