C# Bubblesort für 2D Array?
Guten Tag ich habe bereits einen Bubblesort jedoch ist der nicht für ein 2D Array und ich weiß nicht wie ich denn umschreiben soll, vor allem weil ich halt dazu aus dem string Array sArrEinkauf nur die erste Zeile wo die Artikelnummern A0001 etc. drin stehen sortieren muss das heißt ich muss ja erst die A am Anfang entfernen und dann die Zeilen mit den dazu gehörigen spalten sortieren, hat vllt jemand nen Code oder so dafür ?
2 Antworten
Also als Entwickler solltest du dich ausdrücken können und zwar "eineindeutig".
Bei einem Array arr[x][y] wobei von jedem arr[x] der erste Wert das Sortierkritierium ist also arr[x][0]
int n = arr.Length;
// Für den Sortiervorgang eigentlich nicht notwendig
// aber du wolltest ja das A wegschneiden
for(int i = 0; i < n - 1; i++)
{
arr[i][0] = arr[i][0].SubString(1);
}
// Bubblesort
for(int i = 0; i < n - 1; i++)
{
for(int j = 0; j < n - i - 1; j++)
{
if(arr[j][0] > arr[j + 1][0])
{
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
Weil du Arraytypen mischst ....
arr[0,0] ist nicht glecih arr[0][0]
und
die Größe des arr[] kannst du per arr.Length bestimmen die von arr[,] nur per arr.GetLength(0)
Wie schon einige schrieben, loope durch den array. Nutze String.split um den string aufzuteilen. Und speichere alles außer das erste Element und lege in ab.
Das A dachte ich zu entfernen macht es einfacher zu sortieren ich habe es jetzt so jedoch kommen mehrere Fehler :C