两个吃奶一个添下面视频_人妻第一页香蕉网_欧美xxxx少妇_妺妺窝人体色www婷婷

關(guān)于列表的排序和逆序問題,我們在遇到很多算法問題以及數(shù)據(jù)分析的時候,我們都會涉及到這兩種問題,通常在求解問題的時候把數(shù)據(jù)放在列表中,然后使用列表方法進行排序逆序,都能迅速的幫助我們解決問題。

1. 列表排序

列表排序的時候我們可以采用兩種方式,一種使用sorted(list)進行排序,一種是使用list.sort()進行排序,他們的使用結(jié)構(gòu)分別為:

       1) listname.sort(key=None,reverse=False)

listname為目標列表,key表示指定一個從每個列表元素中提取一個比較的鍵,reverse為可選參數(shù),當指定為True時為降序,如果為Flase則為升序。默認為升序。

       2) newlist = sorted(listname,key=None,reverse=False)

newlist為新的序列,listname為要排序的列表,key和reverse和1)中一致。

兩種方式的區(qū)別在于前者等于在原序列上進行直接修改,而后者會生成一個新的序列。

先定義一個列表為my_list = [2,1,3,5,4,6,8,9,7,10],然后我們進行排序。

代碼如下:

my_list = [2,1,3,5,4,6,8,9,7,10]
my_list.sort()#這種格式是直接在列表后使用sort()函數(shù)
b = sorted(my_list)#這種方式是定義一個新列表來存放排序過的序列
print(b)
print(my_list)

輸出結(jié)果為:

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

這兩種方式的使用可以自己選擇,但一定要注意格式的正確性。

2. 列表逆序

我們在做算法題的時候,很多時候需要把我們存放的數(shù)據(jù)逆序,把一個容器中的數(shù)據(jù)逆序在Python中采用reverse()函數(shù)或者reversed()顯得十分簡單。

他們的結(jié)構(gòu)和排序結(jié)構(gòu)有所不同,reverse()和sort()類似,都是直接在列表后面使用方法就可以了,但reversed需要在前面加上一個存儲類型(因為在reversed()作用后,返回一個迭代器,迭代器中的數(shù)據(jù)是逆序過的,我們使用一種已知的存儲結(jié)構(gòu)來存儲迭代器中的元素更方便訪問,通常會使用列表方法)。

list.reverse()
newlist = list(reversed(list))

我們來看一下實例:

my_list = [2,1,3,5,4,6,8,9,7,10]
c = list(reversed(my_list))#使用reversed逆序一定要加上一個存儲類型
my_list.reverse()#使用reverse逆序
print(c)#輸出
print(my_list)#輸出

輸出結(jié)果為:

[10, 7, 9, 8, 6, 4, 5, 3, 1, 2]
[10, 7, 9, 8, 6, 4, 5, 3, 1, 2]

列表逆序的時候還可以使用前面學習過的切片操作,直接進行逆序:

my_list = [2,1,3,5,4,6,8,9,7,10]
my_list = my_list[::-1]
print(my_list)

輸出結(jié)果為:

[10, 7, 9, 8, 6, 4, 5, 3, 1, 2]

3. 總結(jié)

經(jīng)過前面的學習,加上本章的內(nèi)容,大家應該可以試著去完成下面這個題目,這個題的解法比較適合本章節(jié)的學習。

題目鏈接為:1434。

關(guān)于列表的推薦習題比較多,下面還為大家提供大量的習題去進行練習,大家可以選擇性去作答。

部分習題題解:1434題解、1491題解


點贊(2)

C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習題和答疑,點擊了解:

一點編程也不會寫的:零基礎C語言學練課程

解決困擾你多年的C語言疑難雜癥特性的C語言進階課程

從零到寫出一個爬蟲的Python編程課程

只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程

信息學奧賽或C++選手的 必學C++課程

藍橋杯ACM、信息學奧賽的必學課程:算法競賽課入門課程

手把手講解近五年真題的藍橋杯輔導課程

Dotcpp在線編譯      (登錄可減少運行等待時間)