java实现简单链表
链表是由一个个节点连接起来的。首先链表的node类代码为:
public class node {public int value;//节点的结果node next;//下一个连接的节点public node(){}public node(int value){this.value=value;}public void display(){System.out.println(value " ");}
}
其次是链表类,注意点已经写在注释
附上代码:
public class Linklist {node first;//头节点public Linklist(){first=null;}int length() {if(first==null) {return 0;}int n=1;node p=first; while(p.next!=null) {n ;p=p.next; }//return n;}/** 头部插入首先判断头节点是否为空,如果头节点为空,头节点的指向为新节点* 如果头节点不为空,将新节点指向头节点,(暂时新节点在前,头节点指向在后)* 将设头节点是 2 5 6** 那么新节点就是 3 2 5 6*** 再将头节点指向新节点 那么头节点就是 3 2 5 6*** 拥有了节点,就拥有了整个链表(个人认为)*/public void insertfirst(int a) //从头部插入{if(first==null){first=new node(a);}else if(first!=null){node p=new node(a);//新节点p.next=first;//节点指向firstfirst=p;//first指向第一位。} }/** 尾部插入相对容易理解* 首先还是要判断头是否为空* 然后在找到最后一个节点,插入*/public void insertend(int b)//从尾部插入{if(first==null){first=new node(b);}else{node q=new node(b);//新节点node p=first;while(p.next!=null){p=p.next;}p.next=q;}}public void dispiay()//输出依然要判断头节点{if(first==null) {System.out.println("链表为空");return;} node p=new node();p.next=first; while(p.next!=null){p=p.next;System.out.println("value=" p.value);}}
}
测试类和结果
public class test1 {public static void main(String[] args){Linklist a=new Linklist();a.insertfirst(20);a.insertfirst(7);a.insertfirst(8);a.insertfirst(9);a.insertfirst(155);a.insertend(70);a.insertend(75);a.insertend(780);a.dispiay();System.out.println(a.length());}
}
输出结果为:
value=155
value=9
value=8
value=7
value=20
value=70
value=75
value=780
8
如果对后端、爬虫等感性趣欢迎关注我的个人公众号交流:bigsai
java实现简单链表相关推荐
- JAVA实现简单链表操作
最近拾起数据结构和算法,特此开博,记录一下,希望坚持下去 Java语言中的对象引用实际上是一个指针,所以我们可以编写这样的类来实现链表中的结点. class Node { Object tData; ...
- 栈和队列的Java实现_栈和队列的java简单实现
栈:这是一个先进后出的数据结构,生活中类似的浏览器的返回上一页就可以利用此结构实现,代码如下: public class Stack{private Object[] data;//存储数据 priv ...
- java 链表 实现
(1)简单链表 Java代码 1. package ChapterFive; 2. 3. class Link<E> { 4. 5. public E data; 6. 7. public ...
- java温故笔记(二)java的数组HashMap、ConcurrentHashMap、ArrayList、LinkedList
为什么80%的码农都做不了架构师?>>> HashMap 摘要 HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型.随着JDK(Java Develo ...
- 力扣(LeetCode)剑指offer刷题笔记(java),已完结!!!
文章目录 3.数组中重复的数字 4.二维数组中的查找 5.替换空格 6.从尾到头打印链表 7.重建二叉树 9.两个栈来实现一个队列 10-1.斐波那契数列 10-2.跳台阶 11.旋转数组的最小数字 ...
- java红黑树 冯舜玺_《数据结构与算法分析》(美)马克·艾伦·维斯(Mark Allen Weiss) 著;冯舜玺,陈越 译著【摘要 书评 在线阅读】-苏宁易购图书...
出版者的话 前言 章 引论1 1.1 本书讨论的内容1 1.2 数学知识复习2 1.2.1 指数2 1.2.2 对数2 1.2.3 级数2 1.2.4 模运算4 1.2.5 证明的方法 ...
- s数据结构替换子表java版_数据结构与算法分析Java语言描述(第3版) PDF和源码免费 下载...
<数据结构与算法分析Java语言描述(第3版)>PDF和源码免费 下载 免积分下载 用户下载说明: 图书简介: 数据结构:Java语言描述(原书第3版)是国外数据结构与算法分析方面的经典教 ...
- springboot实现SSE服务端主动向客户端推送数据,java服务端向客户端推送数据,kotlin模拟客户端向服务端推送数据
SSE服务端推送 服务器向浏览器推送信息,除了 WebSocket,还有一种方法:Server-Sent Events(以下简称 SSE).本文介绍它的用法. 在很多业务场景中,会涉及到服务端向客户端 ...
- Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几
Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几 //获得入参的日期 Calendar cd = Calendar.getInstance(); cd.setTime(date ...
最新文章
- 配置Xmanager连接linux
- “面试不败计划”:面试题基础二
- ThreadPoolExecutor线程池的理解与应用
- 实数范围内(包含负数)的求模与求余运算异同
- SparkStreaming之transform
- Java成员的访问权限控制
- 微信小程序系列(3)如何用微信小程序写一个论坛?贴心代码详解(一)发帖
- java hsqldb数据库_【DataBase】Hsqldb的简单使用
- selenium(三)之webDriver与浏览器版本问题
- 计算机怎么接入外接键盘,无线键盘怎么连接电脑 享受无线惬意生活【图文】...
- pixel 3 Top Shot
- java实习找工作经历
- 【开源】我和 JAP(JA Plus) 的故事
- 火线精英手游服务器维护,4399火线精英7月4日23:00全区停机维护公告
- php phalcon 安装,Phalcon框架安装与使用教程介绍
- vs开发,添加try catch(...)发现没有捕获异常,需要对编译命令进行设置
- ELM327 Base Usage
- 从《福布斯》发布的2011年度的全球富豪榜中看到:中国太需要“互联网精神”...
- 【失败面经】【2019暑期实习面试复盘】网易游戏互联网产品策划Vivo交互设计
- javascript格式化输出的实现(MuJS)