Python演算法入門 第1章 3,去重排序

2021-08-30 15:26:00 字數 726 閱讀 4938

去掉重複的數字,並且將剩餘的數字進行從大到小的排序,python**如下

class solution():

'''去除重複數字

從大到小排序

'''def maopao(self,x):

#用集合去重,最後用sorted排序,再用[::-1]倒序處理

a = [i for i in set(x)]

return sorted(a)[::-1]

if __name__ == "__main__":

a = solution()

print(a.maopao([20,40,32,67,40,20,89,300,400,15]))

c語言**如下

#include int main()

//開始氣泡排序

for(i=1;i<=n-1;i++)}}

printf("%d ",a[1]); //輸出第1個數

for(i=2;i<=n;i++) //從2迴圈到n

getchar();getchar();

return 0;

}

實際上python相比較於c/c++並不適合搞演算法,因為在實現效率上與c/c++無法比擬。但是越來越多的企業開始使用python進行演算法處理,主要原因是python專案的開發周期短,在軟體更新如此快速的今天,誰能在最短的時間內開發出符合要求的程式,誰就會佔得先機。

Python演算法入門 第1章 1,桶排序

假如你有7個數需要排序,最大的數為100,那麼你就需要101個桶,桶的編號為0 100。你的數列中的數是多少,就往對應的桶裡面加一,最後按照順序列印桶的編號即可。但此排序方式浪費資源極大,資料量大的時候不建議使用,本文只是介紹最基本的演算法實現原理,作為入門使用。class solution 對輸入...

Python演算法入門 第3章 3 2 快速排序

所謂快速排序,顧名思義,就是一種速度較快的排序方法,是一種常用的排序演算法。快速排序基於 d c 策略 分而治之 即不斷把問題細分 化整為零從而把難以處理的大問題變成小問題來處理。乙個非常經典的案例就是秦國一統六國,採用遠交近攻分而治之的策略。當你不能把眼前的問題解決的時候,你就可以採用分而治之的策...

Python演算法入門 第1章 2,氣泡排序

class solution 氣泡排序 從大到小排序 def maopao self,x 有多少數字,迴圈多少次 for i in range len x 依次讀取列表x裡面的資料,並與下乙個數進行比較 for j in range len x 1 如果小於下乙個數,就將兩個數交換位置 if x j...