全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

java 数据结构单链表的实现

java 数据结构单链表的实现

   单链表实现链表的打印及元素删除操作,链表的实现主要是next属性的定义,将一堆节点关联起来的。实现简单的链表如下:

public class LinkNode { 
  private int value; 
  private LinkNode next; 
 
  public LinkNode(int x) { 
    value = x; 
  } 
   
  public LinkNode getNext(){ 
    return next; 
  } 
 
  public void setNext(LinkNode next) { 
    this.next = next; 
  } 
 
  public int getValue() { 
    return value; 
  } 
} 

       链表操作工具类如下:

public class LinkNodeUtil { 
  public LinkNode deleteNode(LinkNode list,LinkNode node) { 
    //空链表 
    if(node==null||list==null||list.getNext()==null){ 
      return list; 
    } 
     
    //查找node节点 
    LinkNode curNode = list; 
    LinkNode preNode = null; 
    LinkNode next = list.getNext(); 
    while(curNode!=null){ 
      if(curNode.getValue()==node.getValue()){//找到 
        System.out.println("找到待删除对象了。"+node.getValue()); 
        break; 
      } 
      preNode = curNode; 
      curNode = next; 
      next = next.getNext(); 
    } 
         
     
    //删除node节点  
    if(preNode==null){ 
      //第一个元素删除操作直接修正list为next:curNode-next 
      return next; 
    }else{ 
      //删除中间节点中间:preNode-curNode-next 
      preNode.setNext(next); 
      return list; 
    } 
  } 
   
  public void printListNode(LinkNode list){ 
    LinkNode node = list; 
    while(node!=null){ 
      System.out.println(node.getValue()); 
      node = node.getNext(); 
    } 
  } 
   
  public static void main(String[] args) { 
    LinkNode n1 = new LinkNode(1); 
    LinkNode n2 = new LinkNode(2); 
    LinkNode n3 = new LinkNode(3); 
    LinkNode n4 = new LinkNode(4); 
    n1.setNext(n2); 
    n2.setNext(n3); 
    n3.setNext(n4); 
    n4.setNext(null); 
    LinkNodeUtil s = new LinkNodeUtil(); 
    s.printListNode(n1); 
    s.printListNode(s.deleteNode(n1, n3)); 
  } 
} 

      注意链表删除节点如果是第一个节点的话,直接将链表对象赋值给next对象并返回。链表的简单知识,记录于此。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# java  # 数据结构单链表  # 链表的实例  # Java数据结构之链表详解  # Java数据结构之单链表详解  # Java 单链表数据结构的增删改查教程  # Java数据结构之链表、栈、队列、树的实现方法示例  # Java描述数据结构学习之链表的增删改查详解  # Java数据结构之简单链表的定义与实现方法示例  # Java数据结构之双端链表原理与实现方法  # 详解java数据结构与算法之双链表设计与实现  # Java数据结构之链表(动力节点之Java学院整理)  # java 数据结构之删除链表中的元素实例代码  # JAVA 数据结构链表操作循环链表  # Java 数据结构链表操作实现代码  # Java模拟有序链表数据结构的示例  # Java模拟单链表和双端链表数据结构的实例讲解  # java数据结构之实现双向链表的示例  # java实现数据结构单链表示例(java单链表)  # Java数据结构之链表的增删查改详解  # 链表  # 第一个  # 数据结构  # 希望能  # 谢谢大家  # 于此  # 主要是  # getNext  # br  # int  # return  # getValue  # setNext  # void  # private  # pre  # nbsp  # class  # LinkNode 


相关文章: ,购物网站怎么盈利呢?  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  建站之星如何快速更换网站模板?  如何在万网主机上快速搭建网站?  南京网站制作费用,南京远驱官方网站?  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  深圳网站制作培训,深圳哪些招聘网站比较好?  股票网站制作软件,网上股票怎么开户?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  ppt制作免费网站有哪些,ppt模板免费下载网站?  如何快速搭建高效服务器建站系统?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  建站主机系统SEO优化与智能配置核心关键词操作指南  建站之星如何取消后台验证码生成?  常州自助建站:操作简便模板丰富,企业个人快速搭建网站  常州自助建站工具推荐:低成本搭建与模板选择技巧  宁波自助建站系统如何快速打造专业企业网站?  相册网站制作软件,图片上的网址怎么复制?  如何通过商城免费建站系统源码自定义网站主题?  开心动漫网站制作软件下载,十分开心动画为何停播?  如何在宝塔面板创建新站点?  宁波免费建站如何选择可靠模板与平台?  如何在橙子建站上传落地页?操作指南详解  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  广州美橙建站如何快速搭建多端合一网站?  小建面朝正北,A点实际方位是否存在偏差?  ,柠檬视频怎样兑换vip?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  网站制作话术技巧,网站推广做的好怎么话术?  Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递  c# 在ASP.NET Core中管理和取消后台任务  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  名字制作网站免费,所有小说网站的名字?  如何确保FTP站点访问权限与数据传输安全?  红河网站制作公司,红河事业单位身份证如何上传?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  创业网站制作流程,创业网站可靠吗?  c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】  Python多线程使用规范_线程安全解析【教程】  如何使用Golang安装API文档生成工具_快速生成接口文档  建站之星客服服务时间及联系方式如何?  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  建站之星多图banner生成与模板自定义指南  英语简历制作免费网站推荐,如何将简历翻译成英文?  头像制作网站在线制作软件,dw网页背景图像怎么设置?  如何快速查询网站的真实建站时间? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。