真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java實現(xiàn)移除鏈表元素的方法

小編給大家分享一下java實現(xiàn)移除鏈表元素的方法,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比連平網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式連平網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋連平地區(qū)。費用合理售后完善,十余年實體公司更值得信賴。

目的:移除鏈表元素

問題介紹:

刪除鏈表中等于給定值 *「val*」 的所有節(jié)點。

示例描述:

示例:
 
輸入: 1->2->6->3->4->5->6, val = 6
輸出: 1->2->3->4->5

題解思路:

一個是基于哨兵節(jié)點的方式進行解決,另一個是基于java集合的方式來做,本質(zhì)上還是一樣的

程序?qū)崿F(xiàn):

 import java.util.*;
 
public class RemoveElementsTest3 {
    public static void main(String[] args) {
        ListNode l1 = new ListNode(1);
        ListNode l2 = new ListNode(2);
        ListNode l3 = new ListNode(6);
        ListNode l4 = new ListNode(3);
        ListNode l5 = new ListNode(4);
        ListNode l6 = new ListNode(5);
        ListNode l7 = new ListNode(6);
        l1.next = l2;
        l2.next = l3;
        l3.next = l4;
        l4.next = l5;
        l5.next = l6;
        l6.next = l7;
        ListNode listNode = removeElements2(l1, 6);
        System.out.println("listNode = " + listNode);
 
    }
 
    public static ListNode removeElements(ListNode head, int val) {
        ListNode dummyNode = new ListNode(0);
        ListNode currentNode = dummyNode;
        while (head != null) {
            if (head.val != val) {
                currentNode.next = head;
                currentNode = currentNode.next;
            }
            head = head.next;
        }
        currentNode.next = null;
        return dummyNode.next;
    }
 
    public static ListNode removeElements2(ListNode head, int val) {
        List list = new LinkedList<>();
        while (head != null) {
            list.add(head.val);
            head = head.next;
        }
        List tempList = new ArrayList<>();
        tempList.add(val);
        list.removeAll(tempList);
        ListNode dummyNode = new ListNode(0);
        ListNode tempNode = dummyNode;
        for (int i = 0, size = list.size(); i < size; i++) {
            ListNode listNode = new ListNode(list.get(i));
            tempNode.next = listNode;
            tempNode = tempNode.next;
        }
        return dummyNode.next;
    }
}

總結(jié):

其實,寫到這我覺得你看看整個程序的實現(xiàn)邏輯是很容易看懂的吧,沒有什么難點需要推導的,如果不懂的話,可以多調(diào)試調(diào)試給定的程序,每次輸出的內(nèi)容都是成功運行之后才輸出的。

看完了這篇文章,相信你對“java實現(xiàn)移除鏈表元素的方法”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


本文名稱:java實現(xiàn)移除鏈表元素的方法
文章源于:http://weahome.cn/article/ggpsgj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部