Colección de citas famosas - Colección de poesías - Impresión de clasificación de diccionario

Impresión de clasificación de diccionario

Importar Java.util.ArrayList;

Importar Java.util.iterator;

Comparación de clases públicas {

Recuento de vacíos públicos sort(string[]a,char 【】b, int k) {// Ordenación por conteo.

Cadena【】temp = nueva cadena【a longitud 1】;

int【】c = nueva int【k 1】; j;

for(I = 0; I lt= k; i )

c【I】=

for(j = 0; j longitud lt; j ) {

c[B[j]-a']= c[B[j]-a'] 1;

}

para (I = 1; i lt= k; i)

c【I】= c【I】 c【I-1】;

para (j = a . longitud-1; j gt= 0; j-) {

temp[c[B[j]-[A']= A[j];

c[B [ j]-[a']= c[B[j]-[a']-1;

}

para (I = 1; I lt= A. longitud ; i) {

a[I-1]= temp[I];

}

}

clasificación de raíz vacía pública ( String[]A, int d){

ArrayList[]arr = new ArrayList[26];

contando sort(A,divide(A,d),max(divide ( A, d))-'A');

for(int I = 0; i lta . length; i) {

int temp = A[I]. charAt(d-1)-"a";

if (arr[temp] = = null)

arr[temp] = new ArrayList();

arr[temp]add(A[I]);

}

for(int j = 0; j lt26; j ) {// Insertar y ordenar cada depósito de almacenamiento .

if(arr【j】!= nulo) {

insertar(arr【j】);

}

}

//Fusionar los resultados de cada depósito.

int count = 0;

for(int I = 0;ilt26;i) {

if (arr[I]!= null) {

Iterador it = arr[I]. iterador();

mientras(it . hasnext()){

String temp = (String)it .next();

a[count 】 = temporal;

recuento

}

}

}

}

Inserción pública vacía (lista ArrayList){//Ordenación por inserción.

if(lista . size() gt; 1) {

for(int i = 1; i ltlist . size(); i ) {

if (comparar con ((String) lista. obtener (I), (String) lista. obtener (I-1)) lt; 0) {

String temp = (String) lista obtener (I. );

int j = I-1;

for(; j gt= 0 amp ampcompare to (temp, (String) list . get (j)) lt; 0; j -)

lista conjunto (j 1, lista . get (j));

lista conjunto (j 1, temp

}

}

}

}

int comparar con (cadena a, cadena b) {// Comparar el tamaño de dos cadenas.

Devuelve un . comparar con (b);

}

public char[]divide(string[]a, int count){//Obtener el carácter de matriz d para cada cadena en .

char[]B = nuevo carácter [a . longitud];

for(int I = 0; i lta . longitud; i) {

b 【Yo】= A【Yo】. charAt(count-1);

}

Devolver B;

}

carácter público max(char[]B){ //Encuentra el valor máximo en la matriz.

char max ='a';

for (int I = 0; i lt length; i) {

if (B[I]》; max) max = B[I];

}

return max

}

Public static void main(String[] args ) {

CompareString cs = new CompareString();

string【】A = {"Apple","Hola","Estimado","Qingqing"," Todos los días", "Feliz"};

cs . radix sort (A, 1

for (int I = 0; i lta . length; i )

sistema . imprimir (A【I】 "");

}

}