lama_byterun/stdlib/regression/test20.lama

20 lines
405 B
Text
Raw Normal View History

2018-11-01 15:12:45 +03:00
fun insert (tree, value) {
case tree of
2021-01-31 19:11:03 +03:00
Empty -> Node (value, Empty, Empty)
2019-03-07 19:06:04 +03:00
| Node (x, left, right) ->
2018-11-01 15:12:45 +03:00
if x > value
2021-01-31 19:11:03 +03:00
then Node (x, insert (left, value), right)
else Node (x, left, insert (right, value))
2018-11-01 15:12:45 +03:00
fi
esac
}
var i, tree = Empty;
2018-11-01 15:12:45 +03:00
for i := 0, i <= 10, i := i+1 do
printf ("%s\n", tree.string);
tree := insert (tree, i)
od;
printf ("%s\n", tree.string)