次のように、不変のルックアップテーブル(コンストラクターを呼び出すときに修正される)から線形に「平滑化された」データを返す関数(おそらくクラスも)を作成したい場合:

たとえばfunc(5.0) == 0.5。
- ルックアップ テーブルを格納する最良の方法は何ですか? - 2つの配列を使用することを考えています。
- 他のより良い方法はありますか?
 
 
- 必要な値を計算する最良の方法は何ですか? (準備時間を除く実時間効率) - ルックアップ テーブルを事前に並べ替え、argバイナリ検索を使用して最も近い 2 つのポイントを見つけることを考えています。
- それとも、検索を簡単にするために二分木を構築する必要がありますか?
- それとも他にもっと良い方法があるでしょうか?
 
 
- ルックアップ テーブルを事前に並べ替え、
- (マイナー)この種の関数/クラス/データ構造/アルゴリズムを何と呼びますか? コンピュータサイエンスでこれに正式な名前はありますか? 
私は自分のクラスを書く必要があるかもしれないと思います。クラスは、せいぜい、初期化後に変更する必要がなく、おそらく複数のスレッドが使用するため、不変である必要があります。インデックスによってキーと値を取得する必要がある場合もあります。