In advancing technology wireless sensor network have become popular. Wireless sensor networks consist of widely distributed sensor nodes. Sensor nodes have low energy because of its small battery size. This low energy in turn decreases the life span of network. The decreased lifespan of network may affect the application to run in-efficiently. For these reasons, many algorithms and protocols designed for wireless sensor networks which considered the energy consumption in their conception. Another main challenge in wireless sensor networks is to design the routing algorithms to guarantee the delivery of the sensed information properly to destination even in failure of nodes and interruptions in communications.