findSegments
integer[]
findSegments(data, [startIndex=0], [length=data.length], [binaryPredicate=MochiKit.Base.operator.ceq])
O(N)
note: see the overloads also rename findDeltaSegments? todo: change to iter interface or mapped cursor
note: see the overloads also rename findDeltaSegments? todo: change to iter interface or mapped cursor
- Parameters:
-
data <object[]> -
[startIndex=0] <integer> -
[length=data.length] <integer> -
[binaryPredicate=MochiKit.Base.operator.ceq] <bool function(lhs, rhs)>logic is compare(a, b) == 0 (equal)
- Returns:
integer[] - Array of indices, the indices will be index + startIndex (i.e absolute)
setDifference
object[]
setDifference(setA, setB, [cmp=MochiKit.Base.eq)
set subtraction, assuming unordered input: O(N^2)
ref difference todo: hmm, rename "setComplement"? (not same?) todo: implement this method as an Iterable? todo: create versions assuming ordered input (bin-search impl.) and perhaps version assuming unordered but hashable elems? todo: create a Set datastructure and more algorithms (union, sum, intersection etc) todo: move to separate algorithm module todo: support multiple arguments?
ref difference todo: hmm, rename "setComplement"? (not same?) todo: implement this method as an Iterable? todo: create versions assuming ordered input (bin-search impl.) and perhaps version assuming unordered but hashable elems? todo: create a Set datastructure and more algorithms (union, sum, intersection etc) todo: move to separate algorithm module todo: support multiple arguments?
- Parameters:
-
setA <Iterable> -
setB <Iterable> -
[cmp=MochiKit.Base.eq <BinaryPredicate>(==)]
- Returns:
object[] - D = A - B
setIntersection
object[]
setIntersection(setA, setB, [cmp=eq])
- Parameters:
-
setA <Iterable> -
setB <Iterable> -
[cmp=eq] <BinaryComparator>
- Returns:
object[]
setSymmetricDifference
object[]
setSymmetricDifference(setA, setB, [cmp=eq])
Assumes unordered input: O(N^2)
ref symmetricSetDiff
ref symmetricSetDiff
- Parameters:
-
setA <Iterable> -
setB <Iterable> -
[cmp=eq] <BinaryComparator>
- Returns:
object[]