Java編程刪除鏈表中重復的節(jié)點問題解決思路及源碼分享
一. 題目
在一個排序的鏈表中,存在重復的結點,請刪除該鏈表中重復的結點,重復的結點不保留,返回鏈表頭指針。
二. 例子
輸入鏈表:1->2->3->3->4->4->5
處理后為:1->2->5
三. 思路
個人感覺這題關鍵是注意指針的指向,可以定義一個first對象(值為-1,主要用于返回操作后的鏈表),first.next指向head,定義一個last同樣指向first(主要用于操作記錄要刪除節(jié)點的前一個節(jié)點),定義一個p指向head,指向當前節(jié)點。
操作流程:
①先判斷當前p指向與p.next指向是否為空,為空則進入⑤,不為空進入②;
②判斷當前節(jié)點p的值與與p.next的值是否相等,如果相等,進入③,不相等,進入④
③記錄p.val的值為val,循環(huán)判斷val是否與當前p指向相等,相等的話p = p.next,last.next指向p;
④last指向p,p指向p.next;
⑤返回first.next;
四. 程序源碼
class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } } public class Solution { public ListNode deleteDuplication(ListNode pHead) { ListNode first = new ListNode(-1); first.next = pHead; ListNode last = first; ListNode p = pHead; while(p!=null&&p.next!=null){ if(p.val==p.next.val){ int val = p.val; while(p!=null&&p.val==val){ p = p.next; last.next = p; } }else{ last = p; p = p.next; } } return first.next; } }
總結
以上就是本文關于Java編程刪除鏈表中重復的節(jié)點問題解決思路及源碼分享的全部內容,感興趣的朋友可以參閱:Java編程實現從尾到頭打印鏈表代碼實例、Spring boot jpa 刪除數據和事務管理的問題實例詳解、MySQL刪除表數據的方法以及本站其他相關專題,希望對大家有所幫助。如有不足之處,歡迎留言指出!感謝朋友們的閱讀。
上一篇:Java編程基本概念
欄 目:Java編程
本文標題:Java編程刪除鏈表中重復的節(jié)點問題解決思路及源碼分享
本文地址:http://mengdiqiu.com.cn/a1/Javabiancheng/8466.html
您可能感興趣的文章
- 01-10Java咖啡館(1)——嘆咖啡
- 01-10Java Socket編程(三) 服務器Sockets
- 01-10Java進階:Struts多模塊的技巧
- 01-10Java Socket編程(一) Socket傳輸模式
- 01-10Java Socket編程(二) Java面向連接的類
- 01-10Java運行時多態(tài)性的實現
- 01-10Java經驗點滴:處理沒有被捕獲的異常
- 01-10Java Socket編程(四) 重復和并發(fā)服務器
- 01-10Java中的浮點數分析
- 01-10面向對象編程:Java中的抽象數據類型


閱讀排行
本欄相關
- 01-10Java咖啡館(1)——嘆咖啡
- 01-10JVM的垃圾回收機制詳解和調優(yōu)
- 01-10Java Socket編程(三) 服務器Sockets
- 01-10Java進階:Struts多模塊的技巧
- 01-10J2SE 1.5版本的新特性一覽
- 01-10Java Socket編程(一) Socket傳輸模式
- 01-10Java運行時多態(tài)性的實現
- 01-10Java Socket編程(二) Java面向連接的類
- 01-10Java Socket編程(四) 重復和并發(fā)服務
- 01-10Java經驗點滴:處理沒有被捕獲的異常
隨機閱讀
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10delphi制作wav文件的方法
- 01-10SublimeText編譯C開發(fā)環(huán)境設置
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-10C#中split用法實例總結
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 04-02jquery與jsp,用jquery
- 01-11ajax實現頁面的局部加載
- 08-05dedecms(織夢)副欄目數量限制代碼修改
- 08-05DEDE織夢data目錄下的sessions文件夾有什