我需要創建一個整數數組的數組,如[[0,1,2],[4,4,5,7]...[4,5]]
。內部數組的大小可變。內部陣列的最大數量是2^26
。那麼你如何以最快的方式更新這個數組? 當我使用list=[[]] * 2^26
初始化非常快,但更新非常緩慢。相反,我使用在Python中快速訪問和更新整數矩陣或數組
list=[] , for i in range(2**26): list.append.([])
。
現在初始化很慢,更新很快。例如,對於2^26元素陣列,每個陣列上的16777216內部陣列和0.213827311993個元素的平均數量爲1.67728900909秒。這是好的,但我會做更大的數據,因此我需要最好的方法。初始化時間並不重要。 謝謝。
兩點:1.不要調用列表'list',因爲它會遮住內置的名字;和2.你的第一個片段不會做你的想法,試試:'a = [[]] * 10;一個[0] .append( 'A'); a'看看會發生什麼...... – detly 2012-07-17 06:36:57
小調優:用'xrange'代替'range' – xvatar 2012-07-17 07:16:33
嗯你是對的list = [[]] * 2^26是完全不同的。謝謝。 – 2012-07-17 07:24:49