Ich habe diesen Blasensortieralgorithmus, der "arr1" sortiert.C# 3 Arrays mit Blasensortierung sortieren
static int yearAscDes(int value)`
{
if (value == 0)
{
int[] arr1 = { 1930, 1931, 2016, 2014, 2012 };
int temp1 = 0;
for (int i1 = 0; i1 < arr1.Length; i1++)
{
for (int j1 = 0; j1 < arr1.Length - 1; j1++)
{
if (arr1[j1] < arr1[j1 + 1])
{
temp1 = arr1[j1 + 1];
arr1[j1 + 1] = arr1[j1];
arr1[j1] = temp1;
}
}
}
for (int i1 = 0; i1 < arr1.Length; i1++)
{
Console.Write(arr1[i1] + " \n");
}
return 0;
}
Ich möchte 3 verschiedene Arrays mit diesem Algorithmus, die sie miteinander vergleichen.
für z.B.
int[] arr1 = {1930, 1931, 2016, 2014, 2012};
string[] Months = {"Jan", "March", "Dec", "May", "Sept"};
int[] Num = {10, 5, 1, 3, 12};
Wenn ich diese Arrays hatte und ich ARR1 aufsteigend sortiert, möchte ich das Ergebnis wie folgt aussehen:
Ergebnis:
arr1 Monate Num
2016 1. Dezember
2014 Mai 3
2012 September 12
1931 5. März
1930 10. Januar
Warum nicht von 'DateTime'? –
Obwohl @SamIam sehr korrekt ist, wenn Sie sagen, dass, wenn Sie mit dieser Datenstruktur bleiben MÜSSEN, wenn Sie sagen 'arr1 [j1 + 1] = arr1 [j1]; 'können Sie nicht auch nur da in' Monate [j1 + hinzufügen 1] = Monate [j1]; 'und' Num [j1 + 1] = Num [j1]; 'sowie das Speichern von zwei weiteren Temp-Werten' temp2 = Monate [j1 + 1] 'und' temp3 = Num [j1 + 1] ' –
Ein Datum in 3 Felder aufgeteilt zu haben, erscheint mir wirklich widersinnig. Sie können sich diese große Sortierfunktion sparen und mit dem was @SamIam sagt, gehen. – rinukkusu