Data collection problems have received much attention in recent years. Many data collection algorithms that constructed a path and adopted one or more mobile sinks to collect data along the paths have been proposed in wireless sensor networks (WSNs). However, the efficiency of the established paths still can be improved. This paper proposes a cooperative data collection algorithm (CDCA), which aims to prolong the network lifetime of the given WSNs. The CDCA initially partitions the n sensor nodes into k groups and assigns each mobile sink acting as the local mobile sink to collect data generated by the sensors of each group. Then the CDCA selects an appropriate set of data collection points in each group and establishes a separate path passing through all the data collection points in each group. Finally, a global path is constructed and the rendezvous time points and the speed of each mobile sink are arranged for collecting data from k local mobile sinks to the global mobile sink. Performance evaluations reveal that the proposed CDCA outperforms the related works in terms of rendezvous time, network lifetime, fairness index as well as efficiency index.