【数据结构】-单链表-删除递增有序单链表中的重复元素

    技术2024-11-03  23

    思路:既然是递增有序,那么重复的元素一定是紧挨着一起的。

    方法:遍历单链表,检查后继节点是否和自己相同,相同则删除后继节点,否则继续遍历

    出口:没有节点或者只有一个节点的情况下直接return

    LinkList DeleteSame(LinkList L) { if (L == NULL||L->next==NULL)return L; LNode*p = L,*q=p; while (p) { q = p->next; if (q && (p->data == q->data)) { p->next = q->next; free(q); } else p = p->next; } return L; } void twelve() { LinkList L = NULL; L = List_TailInsert(L); //去掉递增有序的线性表中重复的元素 L = DeleteSame(L); List_Print(L); } int main() { twelve(); }

    Processed: 0.011, SQL: 9