링크드 리스트는 요소 노드의 논리적 관계에 따라 배열된 데이터 구조입니다. 이 기사에서는 Java의 연결 목록에 대해 설명합니다. 관심 있는 친구는 이에 대해 배울 수 있습니다.
Linked list는 요소 노드의 논리적 관계에 따라 배열된 데이터 구조입니다. 연결된 목록은 배열의 개념과 유사하게 여러 데이터를 저장하는 데 사용할 수 있습니다.
하지만 배열 자체에는 단점이 있습니다. 배열의 길이가 고정되어 변경할 수 없다는 점입니다. 길이가 고정되면 첫 번째 선택은 당연히 배열이지만 실제 개발에서는 저장할 내용의 길이가 입니다. 종종 불확실하므로 배열 대신 연결 리스트와 같은 구조를 사용할 수 있습니다.
연결된 목록은 가장 간단한 데이터 구조입니다. 주요 목적은 참조 관계에 의존하여 여러 데이터를 저장하는 것입니다. 따라서 지금 저장되는 데이터가 문자열(참조 유형)이라고 가정하면 그림과 같이 됩니다. 저장되었습니다.
Java 구현 연결 목록 코드:
//每一个链表实际上就是由多个节点组成的 public class Node { // 定义一个节点 private String data; // 用于保存数据 private Node next; // 用于保存下一个节点 // 每一个Node类对象都必须保存有响应的数据 public Node(String data) { this.data = data; } public void setNext(Node next) { this.next = next; } public Node getNext() { return this.next; } public String getData() { return this.data; } // 实现节点的添加 // 第一次调用(Link):this代表Link.root // 第二次调用(Node):this代表Link.root.next // 第三次调用(Node):this代表Link.root.next.next public void addNode(Node newNode) { if (this.next == null) { // 如果只有一个节点 this.next = newNode; // 保存新节点 } else { // 当前节点后面还有节点 // 当前节点的下一个节点继续保存 this.next.addNode(newNode); } } // 第一次调用(Link):this代表Link.root // 第二次调用(Node):this代表Link.root.next // 第三次调用(Node):this代表Link.root.next.next public void printNode() { System.out.println(this.data);// 输出当前数据 if (this.next != null) {// 如果还有下一个节点 this.next.printNode();// 输出下一节点 } } } public class LinkDemo { public static void main(String[] args) { Link link = new Link() ; link.add("hello"); //存放数据 link.add("world"); link.add("wwww"); link.print(); //展示数据 } } //负责数据的设置和输出 public class Link { private Node root; //根节点 //增加数据 public void add (String data){ //为了设置数据的先后关系,所以将data包装在一个Node类对象 Node newNode = new Node(data); if(this.root == null ){ //一个链表只有一个根节点 this.root = newNode; //将新的节点设置为根节点 }else{ //从root节点后找到合适的位置 this.root.addNode(newNode); } } //输出数据 public void print(){ if( this.root != null ){ this.root.printNode(); } } }
관련 학습 권장 사항: java 기본 튜토리얼
위 내용은 자바의 연결리스트란 무엇인가의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!