Re: [問題]不用for迴圈尋找陣列中只出現過一次的資料
→
05/09 00:07,
05/09 00:07
收到! XDDD
# def f(L, N=set()): # it's bad
def f(L, N=None):
# print L,f.N
if N is None:
N = set()
if not L:
return []
elif L[0] in N:
return f(L[1:],N)
elif L[0] in L[1:]:
return f(L[1:],N|{L[0]})
else:
return [L[0]]+f(L[1:],N)
if __name__=='__main__':
A = [9,5,5,4,7,6,4,1,2,0,10,9,7]
print f(A)
# [6, 1, 2, 0, 10]
--
當然是完全沒有增進效率....
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.27.47
※ 文章網址: http://www.ptt.cc/bbs/Python/M.1399823296.A.D3C.html
※ 編輯: apua (140.113.27.47), 05/11/2014 23:49:22
※ 編輯: apua (140.113.27.47), 05/11/2014 23:54:02
推
05/12 02:24, , 1F
05/12 02:24, 1F
※ 編輯: apua (140.113.136.219), 05/12/2014 11:10:39
→
05/12 11:11, , 2F
05/12 11:11, 2F
推
05/12 21:25, , 3F
05/12 21:25, 3F
→
05/12 21:27, , 4F
05/12 21:27, 4F
謝謝提醒, 已修改~
※ 編輯: apua (140.113.200.180), 05/13/2014 23:37:02
推
05/15 20:38, , 5F
05/15 20:38, 5F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 5 篇):