c 編碼技巧 七 排序去重

2021-10-14 23:35:30 字數 2256 閱讀 1307

var array = new int ;

array.sort(array); //對array排序

遍歷輸出:

foreach (var item in array)

console.writeline(item);

console.read();

結果為:

123

4567

先轉化為list,再用自帶的list.sort()排序

var array = new int ;

var list = array.tolist(); //轉化為list

list.sort(); //使用預設比較器對list的元素排序

foreach (var item in list)

console.writeline(item);

console.read();

輸出:

123

4567

較複雜的元素,如類,也可以用2種方法排序

public class person

public string name

}class program

,new person(),

new person(),

new person(),

new person()

};//1.使用list的orderby

console.writeline("--------使用list的orderby--------");

var orders = school.orderby(x => x.id);

foreach (var item in orders)

console.writeline(item.id + ":" + item.name);

//2.使用array.sort和比較器比較進行排序

console.writeline("--------構造比較器--------");

console.writeline("--------使用array.sort比較--------");

person array = school.toarray();

array.sort(array, (now, next) =>

);foreach (var item in array)

console.writeline(item.id + ":" + item.name);

console.read();

}}

輸出:

--------使用list的orderby--------

1:e2:c

3:b4:a

5:d--------構造比較器--------

--------使用array.sort比較--------

1:e2:c

3:b4:a

5:d

int array = new int ;

var orders = array.distinct().orderby(x => x); //需引用:using system.linq;

foreach (var item in orders)

console.writeline(item);

console.read();

輸出:

123

4567

使用union先求並集,並集會把重複多餘的去掉,省了distinct,再用orderby排序

int array = new int ;

int another = new int ;

var together = array.union(another);//先求並集,會把重複元素合併為1個

var orders = together.orderby(x => x); //需引用:using system.linq;

foreach (var item in orders)

console.writeline(item);

console.read();

輸出:

123

4567

1011

12

專題七 排序演算法

1 基本思想 每一趟從待排序的資料元素中選出最小 或最大 的乙個元素,順序放在待排序的數列的最前,直到全部待排序的資料元素排完。2 排序過程 示例 初 始 關鍵字 49 38 65 97 76 13 27 49 第一趟排序後 13 38 65 97 76 49 27 49 第二趟排序後 13 27 ...

HLS 開發學習(七)排序

歸併排序 學習自parallel programming for fpgas the hls book 大夥應該都很了解了,就是將乙個新的元素插入到乙個有序陣列中,並繼續保持有序。每步將乙個待排序的記錄,按其關鍵碼值的大小插入前面已經排序的檔案中適當位置上,直到全部插入完為止。現在來考慮它的優化問題...

資料結構複習之七 排序

重要參考資料 主要複製自這裡 一 排序的基本概念 穩定排序 如果排序表中有兩個相等元素,經過排序之後它們的相對位置不變,那麼這個演算法就是穩定的。二 插入排序 直接插入排序 插入排序是在乙個已經有序的小序列的基礎上,一次插入乙個元素。當然,剛開始這個有序的小序列只有1個元素,就是第乙個元素。比較是從...