java - 这些链表方法的区别
问题描述
我目前正在不同站点学习 Linked List,一个在 geeksforgeeks,另一个在初学者书。我很困惑,因为 geeksforgeeks 中的方法很难理解,而另一方面,初学者书很容易理解,有人可以告诉我有什么区别吗?
如果我错了,请纠正我,但据我了解,geeksforgeeks 中的方法是手动链表,而初学者使用链表库,对吗?
这就是我要说的
GeeksforGeeks 方法:
public class LinkedList{
Node head;
static class Node{
int data;
Node next;
Node (int d){
data = d;
next = null;
}
}
public static void main (String [] args){
LinkedList list = new List();
list.head = new Node(1);
Node second = new Node(2);
Node third = new Node(3);
list.head.next = second;
second.next = third;
//this will make (1 -> 2 -> 3)
}
}
初学者书籍方法:
import java.util.LinkedList;
public class LinkedList{
public static void main(String args[]){
LinkedList<Integer> list=new LinkedList<Integer>();
//Adding elements to the Linked list
list.add(1);
list.add(2);
list.add(3);
}
}
解决方案
geeksforgeeks 中的方法是手动链表,而初学者使用链表库,对吗?
这是完全正确的。
BeginnersBook Approach 描述了如何在一般情况下使用 LinkedList,而不管其内部实现
GeeksforGeeks 方法描述了如何在里面实现 LinkedList。
推荐阅读
- php - 在php中上传大于upload_max_filesize的文件
- python - 具有多种条件的数据框集成?
- html - Bootstrap:在折叠/展开期间保持表格大小水平固定
- apache-spark - 如何从 spark sql 调用具有数据框操作的函数?
- jakarta-ee - kubernetes jee:地图资源属性文件
- sass - 如何从数组动态生成 SCSS 中的类?
- python - 使用类创建一个 0-100 不同长度的随机列表并返回生成的列表
- node.js - 如何处理 MongoDB 中大量的群聊消息?
- javascript - 使用 JQuery 获取创建的画布的上下文
- haskell - 在 Haskell 中不存在键的查找中使用 Either