Quickest was to compare 2 CR lists?

Mark Smith lists at futilism.com
Tue Nov 4 05:33:35 EST 2008


Here's mine...

function listIntersect list1, list2
    replace cr with comma & "1" & cr in list1
    split list1 by cr and comma

    repeat for each line L in list2
       if list1[L] is not empty then put L & cr after tIntersect
    end repeat
    return tIntersect
end listIntersect

This seems a bit faster (20-30%) than the repeat for each approach.  
and for long lists with many duplicates it'll probably be faster still.

best,

Mark


On 4 Nov 2008, at 09:08, Klaus Major wrote:

> Hi all,
>
> anyone knows the quickest ways to compare 2 CR delimited lists?
> I need to know what lines of list 1 are contained in list 2.
>
> Right now I am using repeat "for each" and "lineoffset", which is  
> fast,
> but I'm ure this can be done even faster :-)
>
> List 1 = k1
> List 2 = k2
>
> ...
>   repeat for each line i in k1
>     if lineoffset(i,k2) <> 0 then
>       put i & CR after new_ list
>     end if
>   end repeat
> delete char -1 of new_ list
> return new_ list
> ...
>
>
> Best
>
> Klaus Major
> klaus at major-k.de
> http://www.major-k.de
>
>
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your  
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution




More information about the use-livecode mailing list