對於普通的int型列表list,如下
list<
int> list =
newlist
<
int>()
;list.
sort()
;// 公升序排序
list.
reverse()
;// 降序排序:先公升序排序,再反轉順序
對於class型的列表list,根據類的某一屬性進行排序,如下
//使用lambda表示式,在前面加個負號就是降序了
public
class
workinfo
list m_testlist =
newlist
<
workinfo
>()
; m_testlist.
sort
((x, y)
=> x.m_workid.
compareto
(y.m_workid));
//公升序排序
m_testlist.
sort
((x, y)
=>
-x.m_workid.
compareto
(y.m_workid));
//降序排序
如果是這種情況:
dictionary<
int,workinfo> dict =
newdictionary
<
int,
workinfo
>()
; list<
int> testlist =
newlist
<
int>()
; testlist.
sort
((x, y)
=> dict[x]
.m_workid.
compareto
(dict[x]
.m_workid));
//公升序排序 =》 這樣通過id去找到物件,比較物件裡的m_workid值排序,這樣的做法是沒有用的
List排序的兩種實現方法
利用collections.sort方法可以對列表進行排序collections有兩個sort方法 1.sort listlist 2.sort listlist comparator c 方法一 只需要傳入乙個list即可,但是該list中的元素需要實現comparable介面,覆蓋compare...
關於C 兩種排序
學習了選擇排序與氣泡排序後,以我目前的水平認為,選擇排序和氣泡排序的結果上,其實都是將整數型或浮點型的數排成有序數列的演算法,即將數從大到小或從小到大排列。但是,它們使數排成有序數列的過程,是有不同的,於是我就有個疑問,它們實現排序的效率有何不同呢。以下分別是是關於選擇排序與氣泡排序的 選擇排序 i...
列表操作及兩種排序演算法
1.獲取元素 列表名 索引 list1 n 2.修改元素 列表名 索引 值 list1 n m 3.列表組合 list1 list2 list3 4.列表元素的重複 list1 n 5.in not in 6.切片 列表名 start end step 7.增追加多個元素,會將整個容器作為整體新增到...