最後の要素をすぐに取得できるように入力を確認したい場合、実行する正規表現の形式はありますか:
fun someFunction (firstElement::MiddleOfList::LastElement)
だから私は最後の要素を得ることができます
SML リストの最後または中間の要素を見つけるためのパターン マッチはできません。
SML リストは連結リストです。つまり、要素 x を見つけたい場合は、まずその前のすべての要素にアクセスする必要があります。
ただし、ライブラリ関数を使用して、次のような方法で中央の要素を見つけることができます。
fun someFunction list =
let
val (first, middle, last) = (hd list, List.nth (list, (length list) div 2), List.last list)
in
(* your code here *)
end
ただし、これにはリストの長さに比例して時間がかかりますが、リストを使用して漸近的に高速な方法はありません。一定時間のアクセスが必要な場合は、配列の使用を検討する必要があります。
構造last
内のリストの機能があるようです。List
それはあなたが必要とするものですか?