zoukankan      html  css  js  c++  java
  • 4.5 链表元素的删除

    1.删除指定索引index处的元素

    和向链表中添加元素一样,寻找到等待删除的元素前的节点

     找到2前面的节点1,

     1  public E remove(int index){
     2         if(index < 0 || index >= size)
     3             throw new IllegalArgumentException("Remove failed. Index is illegal.");
     4              //找到等待删除的元素之前的节点
     5         Node prev = dummyHead;
     6         for(int i = 0 ; i < index ; i ++)
     7             prev = prev.next;
     8 
     9         Node retNode = prev.next;  //retNode为待删除节点
    10         prev.next = retNode.next;
    11         retNode.next = null;
    12         size --;
    13 
    14         return retNode.e;
    15     }
    16 
    17     // 从链表中删除第一个元素, 返回删除的元素
    18     public E removeFirst(){
    19         return remove(0);
    20     }
    21 
    22     // 从链表中删除最后一个元素, 返回删除的元素
    23     public E removeLast(){
    24         return remove(size - 1);
    25     }

    2 删除链表中的指定元素

     1 // 从链表中删除元素e
     2     public void removeElement(E e){
     3 
     4         Node prev = dummyHead;
     5         while(prev.next != null){
     6             if(prev.next.e.equals(e))
     7                 break;
     8             prev = prev.next;
     9         }
    10 
    11         if(prev.next != null){
    12             Node delNode = prev.next;
    13             prev.next = delNode.next;
    14             delNode.next = null;
    15             size --;
    16         }
    17     }
    带女朋友搬家新家条件不好,累到女朋友了,让女朋友受苦了,特此明志:每天学习,明年这个时候(20190812)让女朋友住上大房子,永远年轻,永远热泪盈眶,很多人都是这样,他们都把自己当成身在梦中一样,浑浑噩噩地过日子,只有痛苦或爱或危险可以让他们重新感到这个世界的真实。
  • 相关阅读:
    abstract关键字
    final关键字
    Vue使用枚举类型实现HTML下拉框
    第八节 pandas读取和保存文件
    第七节 pandas新建数据框的两种方式
    第六节 numpy的常用属性和方法
    第五节 numpy的简单使用
    第三节 matplotlib绘制直方图
    第三节 matplotlib绘制条形图
    第二节 matplotlib绘制散点图
  • 原文地址:https://www.cnblogs.com/make-big-money/p/10322269.html
Copyright © 2011-2022 走看看