ソートされた配列doubleがあります。目標は、配列内のインデックスを見つけることです。<= search の値の値を含むもの。
たとえば、配列には{0, 5, 12, 34, 100}
インデックス範囲 [0 .. 4] の数値が含まれます。
値 = 25 を検索します。そして、index=2 (12 から 34 の間の出現範囲) を取得したい
この場合、バイナリ検索を実行する方法がわかりません。
public class MyComparer : IComparer<double>
{
public int Compare(double x, double y)
{
//<-------- ???
}
}
public double[] spline_x;
MyComparer cmpc = new MyComparer();
int i=Array.BinarySearch(spline_x, x, cmpc);