How to price options efficiently and accurately is an important research problem. Options can be priced by the lattice model. Although the pricing results converge to the theoretical option value, the prices do not converge monotonically. Worse, for some options like barrier-options, the prices can oscillate significantly. Thus, large computational time may be required to achieve acceptable accuracy. The combinatorial techniques can be used to improve the performance for pricing a wide variety of options. This paper uses vanilla options, single-barrier options, double-barrier options, and lookback options as examples to show how to derive linear-time pricing algorithms by combinatorial techniques. These algorithms are shown to compare favorably against many other lattice algorithms, which takes at least quadratic time in computation.