玩转数据结构:第5章 链表和递归

Posted marlonkang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了玩转数据结构:第5章 链表和递归相关的知识,希望对你有一定的参考价值。

链表和递归


5-1 Leetcode中和链表相关的问题 

Java类的递归,包含的成员变量有该类本身。

ListNode

技术图片
//Definition for singly-linked list.
public class ListNode {

    public int val;
    public ListNode next;

    public ListNode(int x) {
        val = x;
    }
}
View Code

/// Leetcode 203. Remove Linked List Elements
/// https://leetcode.com/problems/remove-linked-list-elements/description/

技术图片

 Solution

技术图片
/// Leetcode 203. Remove Linked List Elements
/// https://leetcode.com/problems/remove-linked-list-elements/description/

class Solution {

    public ListNode removeElements(ListNode head, int val) {

        while(head != null && head.val == val){
            ListNode delNode = head;
            head = head.next;
            delNode.next = null;
        }

        if(head == null)
            return head;

        ListNode prev = head;
        while(prev.next != null){
            if(prev.next.val == val) {
                ListNode delNode = prev.next;
                prev.next = delNode.next;
                delNode.next = null;
            }
            else
                prev = prev.next;
        }

        return head;
    }
}
View Code

 

以上是关于玩转数据结构:第5章 链表和递归的主要内容,如果未能解决你的问题,请参考以下文章

玩转数据结构:第6章 二分搜索树

c语言——链表和二叉树

数据结构 Java 版玩转链表双链表

[NEFU 数据结构]阶段一复习

玩转数据结构5之二分搜索树(学习笔记)

第4章 最基础的动态数据结构:链表