datatype 'a tree= Leaf of 'a | Node of 'a tree * 'a * 'a tree
fun binSearch (Node(left,n,right)) x =
if x > n then false
else if x=n then true
else binSearch (Node(left,n,right)) x = binSearch (right) x andalso binSearch (left) x;
私は無力です。そのコードの何が間違っていますか? はところでそれがために働く:二分探索in sml
binSearch (Node (Node (Leaf 1, 2, Leaf 3), 4, Leaf 7)) 7;
とでは動作しません:最初の条件で
binSearch (Node (Node (Leaf 1, 2, Leaf 3), 4, Leaf 7)) 2;