看板 Python 關於我們 聯絡資訊
※ 引述《tsaiminghan (nahgnimiast)》之銘言: : 把字串以固定長度分割 : '112233445566778899AA' => 以長度2分割 : ['11', '22', '33', '44', '55', '66', '77', '88', '99', 'AA'] def split(s,length): temp=[] for i in range(0,len(s)-length,length): temp.append(s[i:i+length]) temp.append(s[i+length:]) return temp 如果要時間複雜度最低應該就是這樣了 看起來也不是很醜 應該就差不多了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.81.126 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1605256888.A.03D.html
Hsins: 那篇文裡面最一開始給出用 list comeprehension 的實現已 11/13 17:53
Hsins: 經夠快了. 認真說起來... 你這個函數還多了不必要的操作... 11/13 17:54
s860134: "naive implementation" 11/14 10:18
ddavid: 這篇比起原本那篇的前兩個方法都可讀性差,重點是時間複雜 11/14 16:49
ddavid: 度並沒有變好 11/14 16:50
ddavid: 特別是刻意另行處理最後一段(可能是以為不整除時會有問題 11/14 16:52
ddavid: )根本是不必要的 11/14 16:52