java单向链表的实现实例

时间:2023-10-23 20:36:10 

上代码喽~


package ncu.com.app.chatpter_5;

import java.util.Random;


//结点类
class Node {
 Object data;
 Node next;
 

}
//操作类
class ListNode{
 public Node first;
 public int size;
 public ListNode(){
  first = null;
  size = 0;
 }
 public void insertNode(Object node){
  Node no = new Node();
  no.data = node;
  no.next = first;
  first = no;
  size++;

 }
 public void disPlay(){
  if(size==0){
   System.out.println("链表为空");
  }
  Node currnode = first;
   while(currnode!=null){
    System.out.print(currnode.data+",");
    currnode = currnode.next;
   }
   System.out.println("");
  }
 //删除i个结点
 public void delect(int i){
  if(i<=size){
   for(int m=0;m<i;m++){
    first = first.next;
    size--;
    disPlay();
   }
  }
 }
 //清空链表
 public void delectAll(){
  size = 0;
  first = null;
  disPlay();
 }
 //获得从i-j中链表的数据
 public void getNode(int i,int j){
  for(int m=0;m<i-1;m++){
   first = first.next;
  }
  Node currnode = first;
  for(int m=0;m<j-i+1;m++){
   System.out.print(currnode.data+",");
   currnode = currnode.next;
  }

 }
}

 

public class NodeTree {
 public static void main(String args[]){
  ListNode listnode = new ListNode();
  for(int i = 0;i<10;i++){
   int k  = new Random().nextInt(10);
   listnode.insertNode(k);
   System.out.print(k+",");

  }
  System.out.println("");
  listnode.disPlay();
  //listnode.delect(10);
  //listnode.delectAll();
  listnode.getNode(2,8);
 }

}

标签:java,单向链表
0
投稿

猜你喜欢

  • Android实现退出时关闭所有Activity的方法

    2021-10-03 00:15:00
  • android读取Assets图片资源保存到SD卡实例

    2022-12-18 19:50:24
  • C# 基础入门--关键字

    2023-01-22 15:44:23
  • Java学习关于循环和数组练习题整理

    2022-07-19 21:01:24
  • Java中关于二叉树的概念以及搜索二叉树详解

    2023-01-12 00:09:25
  • 超全MyBatis动态代理详解(绝对干货)

    2023-11-14 02:28:19
  • C语言实现简单弹跳小球

    2022-07-03 12:54:34
  • spring springMVC中常用注解解析

    2023-09-14 20:45:46
  • mvn中dependencyManagement的使用详解

    2021-11-05 10:19:20
  • C++优先队列用法案例详解

    2022-10-23 17:35:01
  • .net与javascript脚本的交互方法总结

    2021-09-11 09:21:32
  • VScode 打造完美java开发环境最新教程

    2023-02-24 16:02:10
  • Java生成二维码可添加logo和文字功能

    2021-06-23 22:24:35
  • C#装箱和拆箱原理详解

    2021-12-29 16:07:26
  • java实现邮件发送

    2022-06-03 02:48:20
  • Java汉字转拼音工具类完整代码实例

    2021-07-09 21:32:18
  • LINQ基础之From和GroupBy子句

    2023-06-09 02:46:29
  • Android升级支持库版本遇到的两个问题详解

    2023-12-02 11:24:38
  • C语言中fchdir()函数和rewinddir()函数的使用详解

    2022-02-08 20:08:08
  • Android通过JNI实现守护进程

    2021-11-24 20:38:02
  • asp之家 软件编程 m.aspxhome.com