We introduce a non-iterative algorithm for the decomposition of fat and water from three point Dixon images. We adapt the harmonic retrieval framework to obtain the magnetic field-map as the common root of two polynomial equations; an algebraic scheme is used to solve for the field-map. To account for pixels with multiple solutions due to model mismatch, we introduce a model order estimation step. Aided by the estimate of the model order, our algorithm provides a set of feasible solutions at these pixels. We then use the prior information of the smoothness of the field-map to choose the correct solution from the set. The proposed algorithm is flexible enough to be applied to arbitrary sampling patterns and any number of metabolites. In contrast to iterative schemes that assume a single solution, the proposed scheme is not prone to ambiguous estimates due to local minima and model mismatch. This makes the algorithm applicable challenging situations, where the magnetic field is very inhomogeneous. We validate the algorithm with both phantom and human data.