An exercise of SinglyinkedList