zoukankan      html  css  js  c++  java
  • 链表介绍

    单向链表

    单向链表节点结构

    public class Node {
       public int value;
       public Node next;
       public Node(int data) {
           value = data;
      }
    }

    双向链表

    双向链表节点结构
    public class DoubleNode {
       public int value;
       public DoubleNode last;
       public DoubleNode next;

       public DoubleNode(int data) {
           value = data;
      }
    }

    单链表和双链表如何反转

        /**
        * 单链表反转
        * @param head
        * @return
        */
       private static Node reverseNodeList(Node head) {
           Node pre=null;
           Node next=null;
           while(head!=null){
               next=head.next;
               head.next=pre;
               pre=head;
               head=next;
          }
           return pre;
      }
       /**
        * 双链表反转
        * @param head
        * @return
        */
       public static DoubleNode reverseDoubleNode(DoubleNode head){
           DoubleNode pre=null;
           DoubleNode next=null;
           while(head!=null){
               next=head.next;
               head.next=pre;
               head.last=next;
               pre=head;
               head=next;
          }
           return pre;
      }

    把给定值都删除

        /**
        * 删除链表中的某一个值
        * @param head
        * @param num
        * @return
        */
       public static Node deleteNode(Node head,int num){
           while (head!=null){
               if (head.value!=num){   //头结点是否需要删除
                   break;
              }
               head=head.next;
          }
           Node pre=head;
           Node next=head;
           while(next!=null){
               if (next.value==num){
                   pre.next=next.next;
              }else{
                   pre=next;
              }
               next=next.next;
          }
           return head;
      }



  • 相关阅读:
    微信公众号Markdown编辑器, 适合代码排版
    Java8-如何构建一个Stream
    Java8-Stream之数值流
    Java8学习(4)-Stream流
    Dubbo学习1-Hello world
    深入理解JVM垃圾收集机制(JDK1.8)
    持久层框架JPA与Mybatis该如何选型
    淇℃伅 [main] org.apache.catalina.startup.VersionLoggerListener.log Server.鏈嶅姟鍣
    Apache Tomcat下载、安装、配置图文教程
    IIS8.0 配置应用程序初始化功能
  • 原文地址:https://www.cnblogs.com/wangyang1991/p/15188270.html
Copyright © 2011-2022 走看看