我有這種排序「arr1」的氣泡排序算法。C#用Bubble排序3個數組排序
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;
}
我想排序3個不同的陣列使用這種算法,他們相互比較。
例如,
int[] arr1 = {1930, 1931, 2016, 2014, 2012};
string[] Months = {"Jan", "March", "Dec", "May", "Sept"};
int[] Num = {10, 5, 1, 3, 12};
如果我有這些陣列我按升序排序ARR1,我想要的結果看起來像這樣:
結果:
ARR1月民
2016 12月1日
2014年5月3日
2012年9月12日
1931年3月5日
1930年01月10
爲什麼不直接使用1個陣列'DateTime'的? –
儘管@SamIam在說,如果你必須堅持這個數據結構,當你說'arr1 [j1 + 1] = arr1 [j1];'你能不能也只是在那裏添加'月[j1 + 1] = Months [j1];''和'Num [j1 + 1] = Num [j1];'以及另存兩個臨時值'temp2 = Months [j1 + 1]'和'temp3 = Num [j1 + 1]' –
把日期分成3個數組看起來對我來說真的很不直觀。你可以爲自己節省那個巨大的排序功能,並與@SamIam所說的一樣。 – rinukkusu