Java将数组与链表的互换package 链表;
import java.util.ArrayList;
class Node{
int val;
Node next;
Node(int val){
this.val = val;
}
}
public class Main1 {
public static  Node arrayToNode(int[] arr){
Node head = new Node(arr[0]); // 把数组的第⼀个位置定义为头结点
Node other = head; // ⼀个指针,此时指向头结点
for(int i=1;i<arr.length;i++){ //头结点已经定义,从1开始
Node temp = new Node(arr[i]);
< = temp;
other = ;
}//在此处打印结点容易导致head的变化
return head;
}
public static void printNode(Node node){
while(node!=null){
System.out.print(node.val+" ");
node = ;
}
}
public static void nodeTolist(Node node){
ArrayList<Integer> list = new ArrayList<>();
while(node != null){
list.add(node.val);
node = ;
}
System.out.println();
System.out.println(list);
}
public static void main(String[] args){
int[] arr = new int[]{1,2,3,4,5,6};
数组和链表
Node node = arrayToNode(arr);
printNode(node);
nodeTolist(node);
}
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。