国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

Leetcode033--單鏈表中去除重復的元素

2019-11-08 19:38:58
字體:
來源:轉載
供稿:網友

一、原題

Given a sorted linked list, delete all duplicates such that each element appear only once. For example, Given 1->1->2, return 1->2. Given 1->1->2->3->3, return 1->2->3

一、中文

給定一個單鏈表,刪除重復的元素,相同的只保留一個。

三、舉例

Given 1->1->2, return 1->2. Given 1->1->2->3->3, return 1->2->3

四、思路

使用兩個指針,一前一后,如果兩個指針的value不相等就逐個進行移動,如果相等就刪除一個,值得注意的是最后一對元素相等的時候也不能進行判斷,所以要在while循環(huán)之外在判斷一次即可。

五、程序

package code;public class LeetCode46{	public static void main(String args[]){		ListNode list1 = new ListNode(1);		ListNode list2 = new ListNode(2);		ListNode list3 = new ListNode(2);		ListNode list4 = new ListNode(4);		ListNode list5 = new ListNode(4);				list1.next = list2;		list2.next = list3;		list3.next = list4;		list4.next = list5;				ListNode list = deleteDuplicates(list1);		while(list != null){			System.out.PRintln(list.val);			list = list.next;		}	}	//刪除排序鏈表中重復的元素	public static ListNode deleteDuplicates(ListNode head) {		ListNode left = head;		ListNode right = head.next;				if(head == null || head.next == null){			return head;		}				while(right.next != null){			if(left.val == right.val){				right = right.next;				left.next = right;			}			if(left.val != right.val){				right = right.next;				left = left.next;			}		}				//由于前面不能對最后的兩個元素進行判斷,所以再進行一次判斷		if(left.val == right.val){			left.next = null;		}				return head;	}	}-----------------------------------------output---------------------------------------------
124
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 铜梁县| 上高县| 徐州市| 安岳县| 灵山县| 汝城县| 枣庄市| 弥勒县| 白玉县| 安庆市| 兰溪市| 定陶县| 赫章县| 舞阳县| 平安县| 辽宁省| 宣城市| 海南省| 洪湖市| 鲁山县| 威海市| 东台市| 双流县| 托里县| 云阳县| 青田县| 深圳市| 海门市| 莱芜市| 彰化县| 大方县| 龙川县| 宜春市| 南木林县| 江油市| 湟源县| 威远县| 桦川县| 逊克县| 丰台区| 老河口市|