2012-06-17 9 views
2

Может кто-нибудь предложить альтернативу удаления дубликатов из числовога индексируется
таблицы, которая будет вести учет дубликата ?, это один работает, но на столах
1000 или более записей это только кажется, есть процессор, который в свою очередь, дает «не отвечает»
в приложение Lua встроен в.Lua таблица удаления дубликаты

local Dupes ={} 
    local t2 = {}; 
    for i,v in pairs(t1) do 
    Count = table.getn(t2)  
    t2[v] = i 
    Count1 = table.getn(t2) 
    if Count == Count1 then 
     table.insert(Dupes,v) 
    end 
    end 
+0

Вы все еще используете Lua 5.0? Потому что 'getn' не находится в 5.1 или выше. –

ответ

5

Я не вижу цель использования getn. Просто проверьте, есть ли это:

local Dupes ={} 
local t2 = {}; 
for i,v in pairs(t1) do 
    if(t2[v] ~= nil) then 
     table.insert(Dupes,v) 
    end 
    t2[v] = i 
end 
+0

getn должен был проверить разницу, ваш способ работает очень быстро (yeh его 5 встроенных в приложение) –

Смежные вопросы