Java:需要了解LinkNode构造函数和支持函数

Java:需要了解LinkNode构造函数和支持函数,java,linked-list,Java,Linked List,我已经开始研究Java中的LinkedList问题。我遇到了令我困惑的LinkNode。我在leetcode找到了以下问题解决方案:。 我想了解更多关于链接节点的信息。此外,执行以下功能需要什么样的支持功能 public class Solution { public ListNode oddEvenList(ListNode head) { if (head != null) { ListNode odd = head, even = head.next, e

我已经开始研究Java中的LinkedList问题。我遇到了令我困惑的LinkNode。我在leetcode找到了以下问题解决方案:。 我想了解更多关于链接节点的信息。此外,执行以下功能需要什么样的支持功能

public class Solution {
public ListNode oddEvenList(ListNode head) {
    if (head != null) {
    
        ListNode odd = head, even = head.next, evenHead = even; 
    
        while (even != null && even.next != null) {
            odd.next = odd.next.next; 
            even.next = even.next.next; 
            odd = odd.next;
            even = even.next;
        }
        odd.next = evenHead; 
    }
    return head;
}}

它已经由LeetCode在其模板中定义,您不必编写以下代码:

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
    public ListNode oddEvenList(ListNode head) {
        
    }
}
您的代码很好,它将通过:

class Solution {
    public ListNode oddEvenList(ListNode head) {
        if (head != null) {
            ListNode odd = head;
            ListNode even = head.next;
            ListNode evenHead = even;

            while (even != null && even.next != null) {
                odd.next = odd.next.next;
                even.next = even.next.next;
                odd = odd.next;
                even = even.next;
            }

            odd.next = evenHead;
        }

        return head;
    }
}
例如,如果您想在本地进行测试,您可以创建一个名为
b.java
的文件:

import java.util.*;
import javafx.util.*;

class Solution {
    public ListNode oddEvenList(ListNode head) {
        if (head != null) {
            ListNode odd = head;
            ListNode even = head.next;
            ListNode evenHead = even;

            while (even != null && even.next != null) {
                odd.next = odd.next.next;
                even.next = even.next.next;
                odd = odd.next;
                even = even.next;
            }

            odd.next = evenHead;
        }

        return head;
    }
}


class b {
    public static void main(String[] args) {
        Solution object = new Solution();
        System.out.println(object);
    }
}


class ListNode {
    int val;
    ListNode next;
    ListNode() {}
    ListNode(int val) { this.val = val; }
    ListNode(int val, ListNode next) { this.val = val; this.next = next; }
}

然后编写代码,不管您想如何测试它。

关于ListNode,您到底想知道什么?这就是问题中提到的情况:结构ListNode{*int val;*ListNode*next;*ListNode():val(0),next(nullptr){}*ListNode(int x):val(x),next(nullptr){}*ListNode(int x,ListNode*next):val(x),next(next){}*;