Wireless ad hoc networks use mobile devices to deliver services supported by high-speed network connections and high-speed data transmissions in real time. These devices (network nodes) typically act as the network infrastructure to forward data to other nodes from a source to the destination. However, several constraints (e.g., processor, energy consumption, and bandwidth) affect the overall network performance. Cooperation strategies have been considered as a solution to such network limitations and constraints. Recent studies have presented cooperation mechanisms as a solution to unstable network infrastructures where mobile nodes cooperate with each other, forwarding data and performing all the networking functionalities. This paper presents a comprehensive review of the state of the art on cooperation strategies and algorithms for mobile ad hoc networks and delay-tolerant networks. These challenged networks frequently comprise situations where traditional Internet protocols fail to effectively provide desired or expected communication. This paper focuses on cooperation incentive-based approaches for network architectures that support mobile devices and are challenged by mobility constraints such as battery and storage capacity, broadcast constraints, interferences, disconnections, noises, limited bandwidths, and network delays. The surveyed approaches' merits and weaknesses are discussed, and open issues are identified. Finally, conclusions are detailed.