This document proposes a new adaptive routing algorithm built upon the widely studied back-pressure algorithm. It decouples the routing and scheduling components by designing a probabilistic routing table to route packets to per-destination queues, while scheduling decisions in wireless networks use "shadow queues". This reduces implementation complexity and delay compared to existing back-pressure algorithms. The approach can also optimize routing-coding tradeoffs in networks using simple network coding.