Ich habe diesen Algorithmus in Python eine Liste der Namen alphabetisch zu sortieren, und ich kann nicht herausfinden, warum es nicht richtig this list wenn gegeben funktioniert:Warum funktioniert mein alphabetischer Sortieralgorithmus nicht?
for a in range(0,len(V)):
for b in range(a,len(V)):
equal=True
for N in range(0,min(len(V[a]),len(V[b]))):
if ord(V[b][N])<ord(V[a][N]):
V[b],V[a]=V[a],V[b]
equal=False
break
if equal==True and len(V[a])>len(V[b]):
V[b],V[a]=V[a],V[b]
print(V)
Bitte definieren Sie * "funktioniert nicht richtig" *, und geben Sie einen [mcve] und nicht einen externen Link an. – jonrsharpe
Verknüpfen Sie die Liste mit einer Handvoll Namen. Sprinkle in einigen Druckanweisungen, um Zwischenergebnisse zu sehen. Verwenden Sie auch aussagekräftige Namen V und N nicht wirklich zu verstehen, was Sie vorhaben? Und was ist mit dem Ord-Zeug? Python kann Zeichen direkt vergleichen –
ich meinte, dass die Liste nicht sortiert wird, wenn es das Ergebnis gibt, und Entschuldigung für den externen Link, aber für diese Liste ['h', 'y', 'a', 'q', 'b', 'ab', 'abc'] und es druckte die richtige Ausgabe: ['a', 'ab', 'abc', 'b', 'h', 'q', 'y'] und wann angesichts der riesigen Liste dieser Site hat sie die Liste geändert, aber sie wurde nicht sortiert. – TanasaIoan