全网整合营销服务商

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

免费咨询热线: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 


相关文章: Python文件管理规范_工程实践说明【指导】  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  建站之星logo尺寸如何设置最合适?  电商网站制作公司有哪些,1688网是什么意思?  如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法  招贴海报怎么做,什么是海报招贴?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  如何选择建站程序?包含哪些必备功能与类型?  宝塔建站助手安装配置与建站模板使用全流程解析  制作网站哪家好,cc、.co、.cm哪个域名更适合做网站?  建站之星客服服务时间及联系方式如何?  如何通过远程VPS快速搭建个人网站?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  云南网站制作公司有哪些,云南最好的招聘网站是哪个?  建站之星2.7模板快速切换与批量管理功能操作指南  上海网站制作网站建设公司,建筑电工证网上查询系统入口?  如何在云指建站中生成FTP站点?  如何正确选择百度移动适配建站域名?  C++如何使用std::optional?(处理可选值)  网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?  广州建站公司哪家好?十大优质服务商推荐  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  如何制作算命网站,怎么注册算命网站?  c# 在高并发下使用反射发射(Reflection.Emit)的性能  如何快速搭建高效简练网站?  如何在橙子建站中快速调整背景颜色?  公众号网站制作网页,微信公众号怎么制作?  建站主机是否等同于虚拟主机?  无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?  如何选择靠谱的建站公司加盟品牌?  官网自助建站平台指南:在线制作、快速建站与模板选择全解析  如何通过虚拟主机快速搭建个人网站?  创业网站制作流程,创业网站可靠吗?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?  网站建设设计制作营销公司南阳,如何策划设计和建设网站?  公司门户网站制作流程,华为官网怎么做?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?  北京营销型网站制作公司,可以用python做一个营销推广网站吗?  高端云建站费用究竟需要多少预算?  制作网站的软件免费下载,免费制作app哪个平台好?  百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?  广州商城建站系统开发成本与周期如何控制?  建站主机空间推荐 高性价比配置与快速部署方案解析  视频网站制作教程,怎么样制作优酷网的小视频?  山东云建站价格为何差异显著?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  如何用景安虚拟主机手机版绑定域名建站?  小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建 

您的项目需求

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