Battery management systems rely on a model of open-circuit voltage (OCV) and state of charge (SOC) relationship of batteries to compute various internal states and parameters crucial for optimizing battery operation. Although existing OCV models offer high accuracy, they have a few limitations, such as non-invertibility, sensitivity to rounding errors, and violation of the monotonic assumptions of the OCV-SOC characteristic. An effective solution is to approximate the OCV-SOC characteristic using piecewise linear segments and store them as a lookup table, simplifying runtime operations into simple lookup operations. This paper presents a dynamic programming optimization to reduce the experimental OCV-SOC data to a minimal number of breakpoints in a table. The optimization follows a simple recursion to yield an optimal breakpoint set without requiring derivatives or tedious calculations while providing complete flexibility in model tuning-adjusting the number of breakpoints to adjust model accuracy. We demonstrate the optimization using low-rate cycling data from six different Lithium-ion cells, showing that about 10 breakpoints can effectively approximate the OCV-SOC curves within a few millivolt error margin, while closely capturing inverse characteristics, which common empirical modeling methods often fail to achieve. Furthermore, we present a feature correlation analysis based on the differential voltage curves of a battery to evaluate the effect of piecewise linear approximation on the linear trend of common aging features.