Java:需要了解LinkNode构造函数和支持函数
我已经开始研究Java中的LinkedList问题。我遇到了令我困惑的LinkNode。我在leetcode找到了以下问题解决方案:。 我想了解更多关于链接节点的信息。此外,执行以下功能需要什么样的支持功能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
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){}*;