zoukankan      html  css  js  c++  java
  • 第6次课堂学习

    class Link{
     class Node{
      private String data;
      private Node next;
      public Node(String data){
       this.data=data;
       
      }
      public void add(Node newNode){
       if(this.next==null){
        this.next=newNode;
       }else{
        this.next.add(newNode);
        
       }
      }
      public void print(){
       System.out.print(this.data+" ");
       if(this.next!=null){
        this.next.print();
       }
      }
      public boolean search(String data){
       if(data.equals(this.data)){
        return true;
       }else{
        if(this.next!=null){
         return this.next.search(data);
        }else{
         return false;
        }
       }
      }
      public void delete(Node previous,String data){
       if(data.equals(this.data)){
        previous.next=this.next;
       }else{
        if(this.next!=null){
         this.next.delete(this,data);
        }
       }
      }
     }
     private Node root;
     public void addNode(String data){
      Node newNode=new Node(data);
      if(this.root==null){
       this.root=newNode;
       
      }else{
       this.root.add(newNode);
      }
     }
     public void printNode(){
      if(this.root!=null){
       this.root.print();
      }
     }
     public boolean contains(String name){
      return this.root.search(name);
     }
     public void deleteNode(String data){
      if(this.contains(data)){
       if(this.root.data.equals(data)){
        this.root=this.root.next;
       }else{
        this.root.next.delete(root,data);
       }
      }
     }
    }
    public class LinkDemo02 {

     /**
      * @param args
      */
     public static void main(String[] args) {
      // TODO Auto-generated method stub
    Link I=new Link();
    I.addNode("A");
    I.addNode("B");
    I.addNode("C");
    I.addNode("D");
    I.addNode("E");
    System.out.println("==============删除之前========");
    I.printNode();
    I.deleteNode("C");
    I.deleteNode("D");
    System.out.println();
    System.out.println("==============删除之后========");
    I.printNode();
    System.out.println();
    System.out.println("查询节点:"+I.contains("A"));

     }

    }

  • 相关阅读:
    访问系统内容提供器,获取联系人列表
    ubuntu下查看IP Gateway DNS信息
    使用fragment,Pad手机共用一套代码
    动态注册广播接收器,监听网络变化
    启动Activity,传递参数最佳实践
    管理Activity,随时随地控制Activity的销毁工作
    unzip解压中文文件名乱码
    mysql null值转换
    (转)使用scp命令在linux操作系统之间传递文件
    比较两个日期的大小
  • 原文地址:https://www.cnblogs.com/Lx160809221/p/6652211.html
Copyright © 2011-2022 走看看