||Efficient isosurface extraction from large volume data sets requires special algorithms and data structures that allow to quickly identify large parts of the data set, that do not contain any part of the surface and which can be eliminated from the search. Such algorithms typically use a hierarchical spatial subdivision of the volume or they organize the scalar values attached to the cells of the volume, i.e., intervals, in some suitable data structures. Octrees, kd-trees, and interval trees are commonly applied. However, these auxiliary data structures demand storage space that can be several times as large as the original volume data itself. In practise, memory capacity is constrained, preventing the application of the most efficient data structures for extraction of isosurfaces from large volume data sets. For such cases out-of-core methods provide a solution, however, at the cost of disk block reading operations. We present a hybrid algorithm that constructs an optimal data structure within the memory constraint by combining binary space partition (bsp) trees with fast search methods at some leaf nodes of the bsp-tree and memory-free linear search or out-of-core methods at the remaining leaf nodes. The method optimally trades off space for extraction speed. We develop the theory for the optimization, provide implementation details and examples demonstrating the efficiency of the approach. To perform the optimization, we develop and apply models for calculating the memory and estimating the expected extraction time for the search methods based on auxiliary data structures and for an out-of-core method.