how to get a sub list from a list in ocaml
Posted
by romerun
on Stack Overflow
See other posts from Stack Overflow
or by romerun
Published on 2010-04-25T22:31:39Z
Indexed on
2010/04/25
22:33 UTC
Read the original article
Hit count: 185
ocaml
Hi, I'm looking at the List document. It seems the library does not provide a sublist function.
I'm trying to get list of elements from i to j. Now I have to write it as:
let rec sublist list i j = if i > j then [] else (List.nth list i) :: (sublist list (i+1) j)
which is quite concise but I'm questioning the efficiency of List.nth, because if it's O(n), I would rather have to write it in a less concise way.
I'm wondering why didn't they provide List.sublist func, if List.nth is not O(1), because it's such a quite common operation..
© Stack Overflow or respective owner