Colección de citas famosas - Slogan de motivación - Clasificación del diccionario C

Clasificación del diccionario C

Khan ~ ¿No estás hablando del programa C? ¿Por qué todo es estilo C excepto la entrada y la salida?

Primero déjame decirte unas palabras. Este programa que escribiste realmente molesta a los lectores. De todos modos, me tomó algo de tiempo descubrir qué estabas haciendo.

No estás clasificando, solo estás generando en orden lexicográfico. El orden no ha cambiado, ¿verdad? .

El primero es un error gramatical:

else if (replacement【m】【n】= temp【n】) ///"="

count 1;

El siguiente paso es una pregunta lógica:

for (int n = 0; n ltcompare (ch[m], ch[J]); n)

if (reemplazar [m] [n] lt; temperatura

{ for (int l = 0; l ltstrlen (ch [m]); l )

temp【 l] = reemplazar [m] [l];

j = m;

Romper

}

si no; (reemplazar [m][n]=temporal[n])

count 1;

Este juicio no implementa la comparación del orden del diccionario. Por ejemplo, cuando se usan adjk y Bdkj. entrada, el juicio No se detendrá en la diferencia entre A y B, sino que continuará juzgando a J y k

Simplemente agregue otra oración

Otros

. Break;

Pero aquí tienes algunos consejos:

1.

for (int k = 0; k lt count; k )

if (exist[k] == true)

Break;

int J = k

No uses k así. El estándar actual es for (int. I; I in) es una variable local y no tiene ningún efecto si está fuera del bucle

2.

for(int n = 0; n ltcompare. (ch[m], ch[J]);n)

La función de comparación no se utiliza aquí. Ejecutará todos los bucles si el valor sigue siendo el mismo, no hay problema. Una vez cambiado, esto es un pozo sin fondo, húndelo tan profundo como quieras

3. ¿No sería bueno comparar números de doble precisión con minúsculas o mayúsculas? space.

Eso es todo, por favor vamos~

Finalmente, recomiendo usar programas estilo C.

Aunque lo que escribí puede no ser bueno, es un programa C real...

El siguiente programa C puede satisfacer sus necesidades:

# include ltiostream gt

# incluir lt algoritmo gt

# incluir lt cadena gt

# incluir ltvector gt

# incluir ltcctype gt

Usando el espacio de nombres std

Comparador booleano (Cadena a, Cadena b) {

char c1, C2;

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

{

si ((c 1 = bajar(a[I])))! = (C2 = bajar (b【I】))){

Regresar c 1 lt

}

}

<; p>Devuelve verdadero

}

int main() {

Vector lt cadena gtvec

Temperatura de cadena;

CIN gt; gttemp

mientras(temp!= "#") {

vec . push_back(temp);

CIN gttemp

}

sort(vec.begin(),vec.end(),comparator);

for(vector lt; string gt* const _ iterator ITER = vec . comenzar(); iter ltvec . fin(); iter)

{

cout lt*iter lt. ltendl

}

devuelve 0;

}