1.删除链表中重复元素
public class DeleteDuplicates83 {
//定义一个单链表
public class ListNode {
int val; //当前节点值
ListNode next; //下一个节点值
//构造方法 初始化当前节点值
ListNode(int x) { val = x; }
}
/**删除链表中重复元素
* 时间复杂度 O(n)
* @param head 头结点
* @return 返回头结点
*/
public ListNode deleteDuplicates(ListNode head) {
//当前节点是头结点
ListNode current = head;
while (current != null && current.next != null) {
//如果当前节点与下一个节点值相等,则令下下个节点值等于下个节点值;否则链表指针移动到下个节点
if (current.next.val == current.val) {
current.next = current.next.next;
} else {
current = current.next;
}
}
return head;
}
}
2. LeetCode代码测试