给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。
    注意,此题的重点是当前链表是已经排过序的,所以重复的元素一定是连续的,所以只用比较连续的节点即可。

    1. /**
    2. * Definition for singly-linked list.
    3. * struct ListNode {
    4. * int val;
    5. * struct ListNode *next;
    6. * };
    7. */
    8. struct ListNode* deleteDuplicates(struct ListNode* head){
    9. struct ListNode *currentNode = head;
    10. while (currentNode != NULL && currentNode->next != NULL) {
    11. if (currentNode->val == currentNode->next->val) {
    12. currentNode->next = currentNode->next->next;
    13. } else {
    14. currentNode = currentNode->next;
    15. }
    16. }
    17. return head;
    18. }