We propose a "layered-step" interior point (LIP) algorithm for linear programming. This algorithm follows the central path, either with shortsteps or with a new type of step called a "layered least squares" (LLS)step. The algorithm returns the exact global minimum after a finite numberof steps - in particular, after O (mathematical symbol omitted) iterations, where c(A) is a function of the coefficient matrix. The LLS steps can be thought of as accelerating a path-following interior point method whenever near-degeneracies occur. One consequence of the new method is a new characterization of the central path: we show that it composed of at most n-squared alternating straight and curved segments. If the LIP algorithm is applied to integer data, we get as another corollary a new proof of a well-known theorom by Tardos that linear programming can be solved in strongly polynomial time provided that A contains small-integerentries.