2016-07-27 80 views
-3

我有這個項目,我必須排序一些txt文件,其中大多數是數字,但其中之一是一個月的集合。我有代碼將其他人排序,但不包含包含月份的文件。所以我需要改變這個代碼,這樣我可以對字符串數組進行排序,任何建議都會非常出色謝謝!泡泡分類字符串數組c#

public void SortArray(decimal[] numbers) 
{ 
    bool swap; 
    decimal temp; 

    do 
    { 
     swap = false; 

     for(int index = 0; index < (numbers.Length - 1); index ++) 
     { 
      if (numbers[index] > numbers[index+1]) 
      { 
       //swap 
       temp = numbers[index]; 
       numbers[index] = numbers[index + 1]; 
       numbers[index + 1] = temp; 
       swap = true; 

      } 

     } 


    } while (swap == true); 
} 
+0

有很多相關的分選'字符串[]'Stack Overflow上的帖子。請更具體一些。你有什麼嘗試?你需要什麼特別的幫助?請提供一個很好的[mcve],清楚地表明您嘗試解決問題,並精確解釋您需要幫助的具體內容。 –

回答

1

如果你有一個字符串數組是這樣的:使用

Array.Sort(s); 

和很長的路要走對它進行排序,:

string[] s = {"bbb", "ccc", "aaa"}; 

較短的方式對它進行排序,使用

for (var i = 1; i < s.Length; i++) 
    { 
    for (var j = 0; j < s.Length - i; j++) 
    { 
     if (string.Compare(s[j], s[j + 1], StringComparison.Ordinal) <= 0) continue; 
     var temp = s[j]; 
     s[j] = s[j + 1]; 
     s[j + 1] = temp; 
    } 
    } 
0
public void BubbleSortArrayString(string[] letters) //change here 
{ 
bool swap; 
string temp; //change this too 

do 
{ 
    swap = false; 

    for (int index = 0; index < (letters.Length - 1); index++) 
    { 
     if (letters[index] > letters[index + 1]) //if first number is greater then second then swap 
     { 
      //swap 

      temp = letters[index]; 
      letters[index] = letters[index + 1]; 
      letters[index + 1] = temp; 
      swap = true; 
     } 
    } 

} while (swap == true); 

}使用此代碼

...忘了一些回答我最後一次嘗試這個