Weight based clusterhead election algorithms to improve the quality of service for mobile ad hoc networks