data.priority-map
- プライオリティマップ ¶プライオリティマップは、キーを値にマッピングする辞書で、 エントリが値によってソートされているものです (エントリがキーでソートされているのはツリーマップです。ツリーマップ参照)。
ソートされたシーケンスだけれど、 キーによって特定の値に素早くアクセスする必要もある、という場合に便利です。
註: 必要なものがプライオリティキューなら、
data.heap
が使えます (data.heap
- ヒープ参照)。
{data.priority-map
}
プライオリティマップのクラスです。公開スロットはありません。
プライオリティマップのインスタンスは、make
メソッドではなく
make-priority-map
で作る必要があります。
<ordered-dictioary>
を継承し、ディクショナリプロトコルを実装しています。
キーから値へのマッピングに関わる操作は、ディクショナリのジェネリック関数を
使ってください(ディクショナリのためのジェネリック関数参照)。
イテレートする場合は、値の増加順になります。
{data.priority-map
}
空のプライオリティマップを作って返します。
key-comparatorはキーの比較に使われる比較器であり、
またvalue-comparatorは値の順序づけに使われる
順序手続きを持った比較器でなければなりません。
省略された場合はどちらもdefault-comparator
が使われます。
プライオリティマップにdict-comparator
を適用すると、
key-comparatorが返されます。
{data.priority-map
}
ディクショナリdictと同じキー-値のエントリを持つプライオリティマップを作って
返します。作られるマップのキー比較器はdictのキー比較器と同一で、
値比較器はvalue-comparatorです。後者が省略された場合は
default-comparator
が使われます。
{data.priority-map
}
連想リストalistに含まれるキー-値ペアを内容とするプライオリティマップを作って
返します。省略可能引数key-comparatorとvalue-comparatorが
プライオリティマップの構築に使われます。省略された場合はdefault-comparator
となります。
{data.priority-map
}
プライオリティマップpmap中の、それぞれ最小の値および最大の値を持つエントリの
キーと値をペアにして返します。
pmapが空の場合は#f
を返します。
pmap中に、value-comparatorで比較して同じになる値を持つエントリが 複数ある場合は、そのうちのどれか一つが返されます。