元素:真实存于线性表中的内容,是我们一般核心关注的内容。
结点(node);为了组织链表而引入的一个结构,除了保存我们的元素之外,还会保存指向下一个结点的引用。
public class Node {
public int val;
public Node next;
public Node(int val){
this.val=val;
}
}
链表:最终的线性表,表示逻辑上的[1 3 2 6]
目前,我们通过链表的头节点,来代替一整条链表。
//head是一条链表的头结点;通过head我们可以找到找到所有的结点;所以用头节点来代替链表
Node head=...;
//某链表的头节点是null;表示头节点不存在,进一步可以表示一条没有头节点的链表,也就是一条空链表。
Node head=null;
当前结点(current/cur):表示链表中某个结点
前驱节点(previous/prev):表示链表中的某个结点的前一个结点;头节点没有前驱节点。
后继节点(next):表示链表中的某个结点的后一个结点;尾结点没有后继节点。
public class Node {
public int val;
public Node next;
public Node(int val){
this.val=val;
this.next=null;
}
@Override
public String toString(){
return "Node{"+val+"}";
}
}
public class myListNode {
public static Node createList(){
Node a=new Node(1);
Node b=new Node(3);
Node c=new Node(5);
Node d=new Node(6);
a.next=b;
b.next=c;
c.next=d;
d.next=null;
return a;
}
}
Node head=null;
public static void main(String[] args) {
Node head=createList();
Node cur=head;
while(cur!=null){
System.out.print(cur.val+" ");
cur=cur.next;
}
}
public static void main(String[] args) {
Node head=createList();
Node cur=head;
while(cur.next!=null){
cur=cur.next;
}
System.out.println(cur.val);
}
public static void main(String[] args) {
Node head=createList();
Node cur=head;
while(cur.next.next!=null){
cur=cur.next;
}
System.out.println(cur.val);
}
public static void main(String[] args) {
Node head=createList();
Scanner scanner=new Scanner(System.in);
System.out.println("请输入一个小于链表长度的整数");
int n=scanner.nextInt();
Node cur=head;
int i=0;
for(;i<n;i++){
cur=cur.next;
}
System.out.println(cur.val);
}
public static void main(String[] args) {
Node head=createList();
Scanner scanner=new Scanner(System.in);
System.out.println("请输入一个小于链表长度的整数");
int n=scanner.nextInt();
Node cur=head;
int i=0;
for(;i<n;i++){
cur=cur.next;
}
System.out.println(cur.val);
}
public static boolean isElement(Node head,int x){
if(head==null){
return false;
}
for(Node cur=head;cur!=null;cur=cur.next){
if(cur.val==x){
return true;
}
}
return false;
}
public static void main(String[] args) {
Node head=createList();
System.out.println(isElement(head,3));
}
本文实例讲述了AJAX+Servlet实现的数据处理显示功能。分享给大家供大家参考,具...
本文转载自微信公众号「SQL数据库」,作者丶平凡世界 。转载本文请联系开发公众...
CKeditor,以前叫FCKeditor,已经使用过好多年了,功能自然没的说。最近升级到3....
idea官方推送了2020.2.4版本的更新,那么大家最关心的问题来了,之前激活idea202...
前言 项目开发中不管是前台还是后台都会遇到烦人的null,数据库表中字段允许空值...
大家好,我是狂聊君。 今天来聊一聊 Mysql 缓存池原理。 提纲附上,话不多说,直...
在Flash Player 10.1及以上版本中,adobe新增了全局错误处理程序UncaughtErrorEv...
来源:DeepenStudy 漏洞文件:js.asp % Dimoblog setoblog=newclass_sys oblog.a...
问题:我们在做flex的开发中,如果用到别人搭建好的框架,而别人的server名称往...
本文转载自微信公众号「SH的全栈笔记」,作者SH。转载本文请联系SH的全栈笔记公...