题目的意思应该是空间复杂度要求为O(1)。 针对单链表去重,我能想到的方法是:1、hash table,这种方法空间复杂度较高O(n),时间复杂度比较低O(1)。 2、建立三个指针p,q,r,然后p遍历全表。p每到一个结点,q就从这个结点往后遍历,并与p的数值比较,相同的话就free掉那个结点。r是删除节点的时候用的。时间复杂度O(n^2),空间复杂度O(1)
题目的意思应该是空间复杂度要求为O(1)。 针对单链表去重,我能想到的方法是:1、hash table,这种方法空间复杂度较高O(n),时间复杂度比较低O(1)。 2、建立三个指针p,q,r,然后p遍历全表。p每到一个结点,q就从这个结点往后遍历,并与p的数值比较,相同的话就free掉那个结点。r是删除节点的时候用的。时间复杂度O(n^2),空间复杂度O(1)