我目前正在不同的网站学习链接列表,一个是在极客健忘网站,另一个是初学者。我很困惑,因为极客健忘的方法很难理解,而另一方面,入门书很容易理解,有人能告诉我有什么区别吗?
如果我错了,请纠正我,但据我所知,极客健忘者的方法是手动链接列表,而初学者则使用链接列表库,对吗?
,我的意思是,
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)
}
}BeginnersBook方法:
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);
}
} 发布于 2020-05-02 04:47:31
简短的回答是
GeeksforGeeks教您手动实现链接列表,但是您需要使用java的基本知识,因为您将很难理解它。
BeginnersBook教您Java集合框架。这个框架有几个有用的类,它们有大量有用的函数,这使得程序员的任务变得非常容易。
发布于 2020-05-02 04:23:23
方法是手动链接列表,而初学者使用链接列表库,对吗?
那是完全正确的。
BeginnersBook方法描述了如何使用LinkedList,而不管它的内部实现如何。
GeeksforGeeks方法描述了如何在内部实现LinkedList。
发布于 2020-05-02 04:33:31
是的,GeeksforGeeks是手册(或“普通”方式),BeginnersBook使用一个库。
GeeksforGeeks示例实际上教会了如何从头创建链接列表。将列表称为链接列表是最起码的。您需要一个head,然后通过创建一个元素并将其链接到列表中的某个位置来链接后续的list元素。在示例中,它们在最后被连接。
BeginnersBook使用现有的java库。它没有教你如何在内部工作这样一个列表。这个类将一个列表(一堆东西)转化为一个链接列表(一堆链接/链接在一起的东西),但是在这个示例中您看不到链接这些项的含义,它只向您展示了如何通过“添加”项来使用库。库(请参阅https://courses.cs.washington.edu/courses/cse341/98au/java/jdk1.2beta4/docs/api/java/util/LinkedList.html )有各种方法来添加新项,转到下一项,等等。
在学习链接列表是什么方面,第一个是一个更好的例子。
https://stackoverflow.com/questions/61554390
复制相似问题