摘要:三行代碼的快速排序任務(wù)你想證明,對(duì)函數(shù)式編程范式的支持比第一眼看上去的印象強(qiáng)多了。解決方案測(cè)試用例測(cè)試結(jié)果
1. 三行代碼的快速排序
任務(wù):
你想證明,Python對(duì)函數(shù)式編程范式的支持比第一眼看上去的印象強(qiáng)多了。
解決方案:
def quick_sort(l): if len(l) <= 1: return l return quick_sort([lt for lt in l[1:] if lt < l[0]]) + l[0:1] + quick_sort([ge for ge in l[1:] if ge >= l[0]])
測(cè)試用例:
if __name__ == "__main__": l = [9,8,7,6,5,4,3,2,1] print(quick_sort(l))
測(cè)試結(jié)果:
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/41734.html
摘要:解決方案通過(guò)標(biāo)準(zhǔn)庫(kù)的模塊,可以快速完成此任務(wù)。測(cè)試結(jié)果計(jì)算日期之間的時(shí)段任務(wù)給定兩個(gè)日期,計(jì)算這兩個(gè)日期之間隔了幾天。此方法也有諸多限制,時(shí)間格式是固定的,計(jì)算量大時(shí)效率很低。 1.尋找上一個(gè)星期五 任務(wù):尋找上一個(gè)星期五的日期。 解決方案:通過(guò)python標(biāo)準(zhǔn)庫(kù)的datetime模塊,可以快速完成此任務(wù)。 import datetime, calendar def find_la...
摘要:計(jì)算文件的行數(shù)任務(wù)需要計(jì)算一個(gè)文件中有多少行。解決方案用方法再加循環(huán)計(jì)數(shù)進(jìn)行統(tǒng)計(jì),具體代碼如下測(cè)試用例定義一個(gè)函數(shù),向文件中寫(xiě)入數(shù)字,每十個(gè)換一次行。 1.計(jì)算文件的行數(shù) 任務(wù):需要計(jì)算一個(gè)文件中有多少行。 解決方案:用enumerate()方法再加循環(huán)計(jì)數(shù)進(jìn)行統(tǒng)計(jì),具體代碼如下: def get_filelines(file_name): count = 0 f = ...
摘要:對(duì)字典排序任務(wù)對(duì)字典進(jìn)行排序,這意味著需要根據(jù)字典的鍵排序,然后再讓對(duì)應(yīng)的值也處于同樣的順序。測(cè)試用例下雨天晴天陰天測(cè)試結(jié)果討論在最后的語(yǔ)句中,將列表推導(dǎo)式換成對(duì)的調(diào)用可以獲得一些速度上的提升大約。 1.對(duì)字典排序 任務(wù):對(duì)字典進(jìn)行排序,這意味著需要根據(jù)字典的鍵排序,然后再讓對(duì)應(yīng)的值也處于同樣的順序。 解決方案:最簡(jiǎn)單的方法是,先將鍵排序,然后選出對(duì)應(yīng)值。 def sort_dict(...
摘要:過(guò)濾字符串中不屬于指定集合的字符任務(wù)給定一個(gè)需要保留的字符的集合,構(gòu)建一個(gè)過(guò)濾函數(shù),并可將其應(yīng)用于任何字符串,函數(shù)返回一個(gè)的拷貝,該拷貝只包含指定字符集合中的元素。用方法用于創(chuàng)建字符映射的轉(zhuǎn)換表,具體代碼如下測(cè)試用例測(cè)試結(jié)果 1.過(guò)濾字符串中不屬于指定集合的字符 任務(wù):給定一個(gè)需要保留的字符的集合,構(gòu)建一個(gè)過(guò)濾函數(shù),并可將其應(yīng)用于任何字符串s,函數(shù)返回一個(gè)s的拷貝,該拷貝只包含指定字...
摘要:我是布小禪,一枚自學(xué)萌新,跟著我每天進(jìn)步一點(diǎn)點(diǎn)吧說(shuō)了這么多暫時(shí)也就夠了,那么就告辭吧 文章目錄 ?? 前言 ??? 作者簡(jiǎn)介 ??文件操作?1??、open函數(shù)...
閱讀 2069·2021-09-13 10:23
閱讀 2415·2021-09-02 09:47
閱讀 3886·2021-08-16 11:01
閱讀 1294·2021-07-25 21:37
閱讀 1661·2019-08-30 15:56
閱讀 609·2019-08-30 13:52
閱讀 3208·2019-08-26 10:17
閱讀 2506·2019-08-23 18:17