- 
                Notifications
    You must be signed in to change notification settings 
- Fork 35
T_CodeJam_Algorithms
        Andrew Koryavchenko edited this page Jun 17, 2018 
        ·
        13 revisions
      
    Miscellaneous algorithms
System.Object
  CodeJam.Algorithms
Namespace: CodeJam
Assembly: CodeJam (in CodeJam.dll) Version: 2.1.0.0
C#
public static class AlgorithmsVB
<ExtensionAttribute>
Public NotInheritable Class AlgorithmsF#
[<AbstractClassAttribute>]
[<SealedAttribute>]
[<ExtensionAttribute>]
type Algorithms =  class endThe Algorithms type exposes the following members.
| Name | Description | |
|---|---|---|
|    | EqualRange(IList(DateTime), DateTime) | Returns the tuple of [i, j] where i is the smallest index in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(IList(DateTimeOffset), DateTimeOffset) | Returns the tuple of [i, j] where i is the smallest index in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(IList(Double), Double) | Returns the tuple of [i, j] where i is the smallest index in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(IList(Single), Single) | Returns the tuple of [i, j] where i is the smallest index in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(IList(TimeSpan), TimeSpan) | Returns the tuple of [i, j] where i is the smallest index in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(IList(DateTime), DateTime, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(IList(DateTimeOffset), DateTimeOffset, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(IList(Double), Double, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(IList(Single), Single, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(IList(TimeSpan), TimeSpan, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(IList(DateTime), DateTime, Int32, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such j exists | 
|    | EqualRange(IList(DateTimeOffset), DateTimeOffset, Int32, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such j exists | 
|    | EqualRange(IList(Double), Double, Int32, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such j exists | 
|    | EqualRange(IList(Single), Single, Int32, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such j exists | 
|    | EqualRange(IList(TimeSpan), TimeSpan, Int32, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such j exists | 
|    | EqualRange(TElement, TValue)(IList(TElement), TValue) | Returns the tuple of [i, j] where i is the smallest index in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(TElement, TValue)(IList(TElement), TValue, Func(TElement, TValue, Int32)) | Returns the tuple of [i, j] where i is the smallest index in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(TElement, TValue)(IList(TElement), TValue, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(TElement, TValue)(IList(TElement), TValue, Int32, Func(TElement, TValue, Int32)) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists j is the smallest index in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such j exists | 
|    | EqualRange(TElement, TValue)(IList(TElement), TValue, Int32, Int32) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such j exists | 
|    | EqualRange(TElement, TValue)(IList(TElement), TValue, Int32, Int32, Func(TElement, TValue, Int32)) | Returns the tuple of [i, j] where i is the smallest index in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists j is the smallest index in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such j exists | 
|    | LowerBound(IList(DateTime), DateTime) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(IList(DateTimeOffset), DateTimeOffset) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(IList(Double), Double) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(IList(Single), Single) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(IList(TimeSpan), TimeSpan) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(IList(DateTime), DateTime, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(IList(DateTimeOffset), DateTimeOffset, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(IList(Double), Double, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(IList(Single), Single, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(IList(TimeSpan), TimeSpan, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(IList(DateTime), DateTime, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists | 
|    | LowerBound(IList(DateTimeOffset), DateTimeOffset, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists | 
|    | LowerBound(IList(Double), Double, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists | 
|    | LowerBound(IList(Single), Single, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists | 
|    | LowerBound(IList(TimeSpan), TimeSpan, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists | 
|    | LowerBound(TElement, TValue)(IList(TElement), TValue) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(TElement, TValue)(IList(TElement), TValue, Func(TElement, TValue, Int32)) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(TElement, TValue)(IList(TElement), TValue, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(TElement, TValue)(IList(TElement), TValue, Int32, Func(TElement, TValue, Int32)) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] >= value or list.Count if no such i exists | 
|    | LowerBound(TElement, TValue)(IList(TElement), TValue, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists | 
|    | LowerBound(TElement, TValue)(IList(TElement), TValue, Int32, Int32, Func(TElement, TValue, Int32)) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] >= value or endIndex if no such i exists | 
|    | Memoize(TArg, TResult)(Func(TArg, TResult), Boolean) | Caches function value for specific argument. | 
|    | Memoize(TArg, TResult)(Func(TArg, TResult), LazyThreadSafetyMode) | Caches function value for specific argument. | 
|    | Memoize(TArg, TResult)(Func(TArg, TResult), IEqualityComparer(TArg), Boolean) | Caches function value for specific argument. | 
|    | Memoize(TArg, TResult)(Func(TArg, TResult), IEqualityComparer(TArg), LazyThreadSafetyMode) | Caches function value for specific argument. | 
|    | Memoize(TArg1, TArg2, TResult)(Func(TArg1, TArg2, TResult), Boolean) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TResult)(Func(TArg1, TArg2, TResult), LazyThreadSafetyMode) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TArg3, TResult)(Func(TArg1, TArg2, TArg3, TResult), Boolean) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TArg3, TResult)(Func(TArg1, TArg2, TArg3, TResult), LazyThreadSafetyMode) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TArg3, TArg4, TResult)(Func(TArg1, TArg2, TArg3, TArg4, TResult), Boolean) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TArg3, TArg4, TResult)(Func(TArg1, TArg2, TArg3, TArg4, TResult), LazyThreadSafetyMode) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TArg3, TArg4, TArg5, TResult)(Func(TArg1, TArg2, TArg3, TArg4, TArg5, TResult), Boolean) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TArg3, TArg4, TArg5, TResult)(Func(TArg1, TArg2, TArg3, TArg4, TArg5, TResult), LazyThreadSafetyMode) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult)(Func(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult), Boolean) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult)(Func(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TResult), LazyThreadSafetyMode) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult)(Func(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult), Boolean) | Caches function value for specific arguments. | 
|    | Memoize(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult)(Func(TArg1, TArg2, TArg3, TArg4, TArg5, TArg6, TArg7, TResult), LazyThreadSafetyMode) | Caches function value for specific arguments. | 
|    | PartitionPoint(T)(IList(T), Predicate(T)) | Returns the index i in the range [0, list.Count - 1] such that predicate(list[j]) = true for j < i and predicate(list[k]) = false for k >= i or list.Count if no such i exists The list should be partitioned according to the predicate | 
|    | PartitionPoint(T)(IList(T), Int32, Predicate(T)) | Returns the index i in the range [startIndex, list.Count - 1] such that predicate(list[j]) = true for j < i and predicate(list[k]) = false for k >= i or list.Count if no such i exists The list should be partitioned according to the predicate | 
|    | PartitionPoint(T)(IList(T), Int32, Int32, Predicate(T)) | Returns the index i in the range [startIndex, endIndex - 1] such that predicate(list[j]) = true for j < i and predicate(list[k]) = false for k >= i or endIndex if no such i exists The list should be partitioned according to the predicate | 
|    | Swap(T) | Swaps two objects | 
|    | UpperBound(IList(DateTime), DateTime) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(IList(DateTimeOffset), DateTimeOffset) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(IList(Double), Double) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(IList(Single), Single) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(IList(TimeSpan), TimeSpan) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(IList(DateTime), DateTime, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(IList(DateTimeOffset), DateTimeOffset, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(IList(Double), Double, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(IList(Single), Single, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(IList(TimeSpan), TimeSpan, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(IList(DateTime), DateTime, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such i exists | 
|    | UpperBound(IList(DateTimeOffset), DateTimeOffset, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such i exists | 
|    | UpperBound(IList(Double), Double, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such i exists | 
|    | UpperBound(IList(Single), Single, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such i exists | 
|    | UpperBound(IList(TimeSpan), TimeSpan, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such i exists | 
|    | UpperBound(TElement, TValue)(IList(TElement), TValue) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(TElement, TValue)(IList(TElement), TValue, Func(TElement, TValue, Int32)) | Returns the minimum index i in the range [0, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(TElement, TValue)(IList(TElement), TValue, Int32) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(TElement, TValue)(IList(TElement), TValue, Int32, Func(TElement, TValue, Int32)) | Returns the minimum index i in the range [startIndex, list.Count - 1] such that list[i] > value or list.Count if no such i exists | 
|    | UpperBound(TElement, TValue)(IList(TElement), TValue, Int32, Int32) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such i exists | 
|    | UpperBound(TElement, TValue)(IList(TElement), TValue, Int32, Int32, Func(TElement, TValue, Int32)) | Returns the minimum index i in the range [startIndex, endIndex - 1] such that list[i] > value or endIndex if no such i exists |