单向链表和双向链表区别(单双向链表原理)

单向链表和双向链表区别(单双向链表原理)增加节点 头部插入 中间插入 尾部插入 头部插入和尾部插入 改变 next 属性指向插入节点 中间插入 使得 插入位置的上一个元素的节点 指向 插入元素 而插入元素的 next 属性指向上一个元素原本的下一个节点 利用辅助指针 HeroNode temp head 创建 amp ndash

大家好,我是讯享网,很高兴认识大家。



//增加节点
  //头部插入—中间插入—尾部插入
  //头部插入和尾部插入—改变next属性指向插入节点
  //中间插入—使得 插入位置的上一个元素的节点 指向 插入元素,而插入元素的 next 属性指向上一个元素原本的下一个节点–利用辅助指针

讯享网

      HeroNode temp = head; //创建–辅助指针
      boolean flag = false; //flag标志添加的编号是否存在,默认false
      while(true) {
        if(temp.next == null) { //当为链表末端时,
          break;
        }
        if(temp.next.no > node.no) {
          break; //这里是遵循序号规则大小排序位置找到
        }else if(temp.next.no == node.no) {
          flag = true; //编号存在
          break;
        }
      temp = temp.next; //继续遍历洗下一个元素
      }//–循环结束
      //判断flag的值
      if(flag) {
        System.out.println(“准备插入的编号已经存在”);
      }else {
      //插入链表,temp的后面
        node.next = temp.next;
        temp.next = node;
      }

讯享网//删除节点–节点无法自我删除
  //利用 辅助指针 找到要删除元素的上一个位置,改变其next属性,指向该next属性的下一个next

    public void del(int index) {
      //创建辅助指针
    HeroNode temp = head;
    boolean flag = false; //判断是否存在该节点
    while(true) {
      if(temp.next == null) {
         System.out.println(“该链表为空”);
        break;
       }
      if(index == temp.next.no) {
        flag = true;
        break;
       }
    temp = temp.next;
    }


讯享网

    //判断是否要删除节点

    if(flag) {
      temp.next = temp.next.next;//使得要删除节点的上一个节点的next属性指向,下下个元素。
    }else {
      System.out.printf(“要删除的%d节点不存在 “,index );
      }
    }

//修改节点   //找到要修改的节点

  public void updateNode(HeroNode node) {
    //创建辅助指针
    HeroNode temp = head;
    boolean flag = false;//表示是否找到节点
    while(true) {
      if(temp == null) {
        break;//遍历完节点
      }
      if(temp.no == node.no) {
        flag = true;
        break;
      }
    temp = temp.next;//遍历下一个元素
    }
    //根据flag值判断是否修改节点
    if(flag) {
      temp.name = node.name;
      temp.nickname = node.nickname;
    }else {
    System.out.println(“没有找到要修改的编号节点”);
      }
    }

小讯
上一篇 2025-04-20 10:35
下一篇 2025-04-14 18:32

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/176598.html