給定一個排序鏈表,刪除所有重複的元素,使得每個元素只出現一次。
示例 1:
輸入: 1->1->2
輸出: 1->2
示例 2:
輸入: 1->1->2->3->3
輸出: 1->2->3
/**
* @param {ListNode} head
* @return {ListNode}
*/
var deleteDuplicates = function(head) {
let rs = new ListNode();
let dummy = rs;
let arr = new Array();
while(head!=null){
// 就證明是重複項
if(arr.includes(head.val)){
// console.log(head.val);
// console.log("if==="+head.val);
// head = head.next;
// console.log("if==="+rs.val);
rs.next = null;
// if((head.next==null&&rs.val==rs.next.val)
// ||(head.next.val==head.val)){
// console.log(111);
// let node = rs;
// while(node.next!=null&&node.next.next!=null){
// node=node.next;//找到倒數第二個結點
// }
// node.next=null;
// }
// 不是重複項 就 移動並且更新字典
}else{
arr.push(head.val);
// console.log("else==="+head.val);
rs.next = head;
// let headT = head.next;
// if(headT!=null&&!arr.includes(headT.val)){
rs = rs.next;
// }
// console.log("else==="+rs.val);
}
head = head.next;
}
return dummy.next;
};
可不可以,不要多想~~~