2011-03-04 34 views
1

排序方法如何在不使用排序方法在C#如何在不使用在C#

+3

實現排序的東西?沒有? – Andrey 2011-03-04 10:20:23

+1

這裏肯定缺少一些背景... – 2011-03-04 10:21:45

+0

@Marc - 也許一個家庭作業,學習如何執行手工排序? – 2011-03-04 10:23:15

回答

1

通過按字母或任何順序值分配值排序數組進行排序陣列。

很抱歉,但我不明白你的問題。你試圖解決的實際問題是什麼?

+0

我想排序數組而不使用數組排序方法。如果你知道請給一些代碼提示 – Aman 2011-03-04 10:23:07

+0

試試這個:[Bubble Sort](http://www.go4expert.com/forums/showthread.php?t=4461)。 – 2011-03-04 10:26:16

+0

@Aman - 我想我們已經明白你想要什麼。但我們不明白爲什麼在這個世界上你想做這樣的事情! – 2011-03-04 10:26:40

0

使用嵌套循環排序的方法,如冒泡排序。

但是,爲什麼你要做這樣的事情?

+3

我猜想作業:p – 2011-03-04 10:22:30

+0

不要使用bubblesort,永遠不會推薦某人使用它,這是一個壞的算法... – 2011-03-04 11:32:57

+0

@Quandary:我們都知道這很糟糕,但PO正在尋找替代方案。 – 2011-03-04 12:08:04

0

由於數組實現了IEnumerable<T>,因此您可以使用IEnumerable上的OrderBy擴展方法對其進行排序。

如果你的問題是如何做到這一點,而無需使用任何內置在框架的功能,我想我將不得不問。 爲什麼?

4

Visualization and Comparison of sorting algorithms in C#

示例代碼

public IList BubbleSort(IList arrayToSort) 
{ 
    int n = arrayToSort.Count - 1; 
    for (int i = 0; i < n; i++) 
    { 

     for (int j = n; j > i; j--) 
     { 
      if (((IComparable)arrayToSort[j - 1]).CompareTo(arrayToSort[j]) > 0) 
      { 
       object temp = arrayToSort[j - 1]; 
       arrayToSort[j - 1] = arrayToSort[j]; 
       arrayToSort[j] = temp; 
         } 
     } 
    } 
    return arrayToSort; 
} 

上面一定會幫助你瞭解你想要

+0

手錶零數在這裏... – 2011-03-04 10:28:20

+0

Bubblesort絕對是最好的建議! (諷刺):) – Andrey 2011-03-04 10:31:02

+0

Bubblesort絕對是一個不好的算法,不應該用於教育用途以外的任何其他用途(對於那些不懂諷刺的人)... – 2011-03-04 11:30:26