Q: How adding element in linked-list at head avoids tail traversing in java hashmap? In many of the articles which i read about hashmap i found this statement common without any explanation "we store every new element at the head of the linked list to avoid tail traversing". 
When we pass Key and Value object  to put() method on Java HashMap, HashMap implementation calls hashCode method on Key object and applies returned hashcode into its own hashing function to find a index for storing Entry object .After finding index for new entry lets assume that the index already contains entry, in this case the hash of key is compared and key itself is compared by equals method, if no match is found we need to traverse through linked-list .In any way we need to traverse through the linked-list whether we add entry at last or head .how adding element at head avoids tail traversing ? 
I already got the answer by Maurice Perry in comments. this edit is attempt to make question more clear.

A: A HashMap is an array of linked lists. When you put an new entry, you compute the hashCode() of the new key modulo the size of the array (hash table), then you must traverse the list at that location to make sure the key is not already in the list. If it isn't, you can then add the new entry to the list.
