我有2D列表,我需要搜索元素的索引。由於我begineer編程我用下面的功能:使用python在2D列表中搜索以找到x,y位置
def in_list(c):
for i in xrange(0,no_classes):
if c in classes[i]:
return i;
return -1
這兒上課的是一個二維的列表,並no_classes表示的類的數量即列表中的第1 dimesntion。當c不在araray中時返回-1。有沒有我可以優化搜索?
可以優化它,如果你將使用一個適當的數據結構,如集,或者如果你的清單預先進行排序,否則O(N^2)算法,你不能做到這一點更快 –
@Roman Park:你可以提供一些關於優化這個的提示嗎? – ranger
你在列表中有重複嗎?元素順序是否重要? –