Das Problem ist, es die Worte wie diese gibt:Ich habe versucht, Wörter aus einem Array zu sortieren, aber es funktioniert nicht
zahlen zahlen z y wörter w sondern sind standard s r keine k junge j i hello hilla h g f e die diese bbbb bbba bbba a
von Z bis A aber zum Beispiel die Position der Wörter „hallo“ und "hilla" sollte geändert werden und ich weiß nicht, warum sie so sind.
Ich weiß, dass es eine compareTo
Funktion für Zeichen gibt. Ich würde gerne wissen, warum dies die Wörter im Array falsch sortiert.
using System;
using System.Collections;
namespace WortArraySortieren
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("hello junge die standard zahlen sind keine zahlen sondern diese wörter hier ");
string[] wordlist = new string[] {"hello","junge","die","standard","zahlen","sind","keine","zahlen","sondern","diese","wörter","hilla","a", "bbba", "bbbb", "bbba", "e", "f", "g", "h", "i", "j", "s", "w", "k", "z", "r", "y" };
int length = wordlist.Length;
for (int m = 0; m < wordlist.Length; m++)
{
for (int i = 0; i < wordlist.Length - 1; i++)
{
string a = wordlist[i];
string b = wordlist[i + 1];
for (int e = 0; e < a.Length && e < b.Length;e++)
{
char letter0 = a[e];
char letter1 = b[e];
if (letter0 < letter1)
{
string temp = wordlist[i + 1];
wordlist[i + 1] = wordlist[i];
wordlist[i] = temp;
break;
}
}
}
}
for (int u = 0; u < wordlist.Length; u++)
{
Console.Write(wordlist[u] + " ");
}
Console.ReadLine();
}
}
}
Gibt es Gründe, nicht verwenden 'wordlist.OrderByDescending (n => s)'? –
Verwenden Sie einfach 'string [] wordlist = new string [] {" Hallo "," hilla "};', So können Sie Ihren Code leicht debuggen (Zuerst tauschen Sie dieses Wort wegen 'e' nad' i' und dann Sie tauschen wieder wegen 'a' und' o') –
@Arnaud F. Ich wollte es auf eigene Faust tun, ohne diese kleinen Helfer zu benutzen: D für besser in C# yeah: D hat nicht funktioniert und ich habe nicht verstanden, warum :) – Stinkepeter666