zoukankan      html  css  js  c++  java
  • java中实现链表(转)

    分析: 
    上述节点具备如下特征: 
    1、 每个节点由两部分组成(存储信息的字段,存储指向下一个节点的指针) 2、 节点之间有着严格的先后顺序。 
    3、 单链表节点是一种非线性的结构,在内存中不连续分配空间。

     设计: 

    设计节点 

    设计涉及到算法: 初始化单链表: 
    1、 提供一个init方法,用来加载链表数据 2、 实现链表的链接。

    具体代码如下:

    public class Linker {  
     public NODE head; 
     //define the initial function to init the single linker! 
     public void init(char v_char[])  {  
     NODE ptr  
      NODE p new NODE();  
    head = p; 
      for(int i = 0; i < v_char.length;i++)   
    {    
    ptr new NODE();   
     
       ptr.info = v_char[i]; 
       p.link = ptr;   
     ptr.link null;   
     p = ptr; 
    }
    } 
     //define search in linker 
     public boolean searchinlinker(char ch)  {  
     boolean flag = false;   NODE ptr;    ptr = head.link;   while( ptr != null)   {    

    if(ch == ptr.info)    {  
       flag = true;   
      break;     }   
     
    else  {    ptr = ptr.link;    }       return flag;   }   //define the insert fuction   public void insertintolinker(char pos,char ch)  {   
    NODE ptr;  
    NODE p;  ptr 
    = head.link;  
    while( ptr != null)   
    {    
    if(pos == ptr.info)    {     

    //实现数据插入     p = new NODE();     p.info = ch;     p.link = ptr.link;     ptr.link = p;     break;     }    else {     ptr = ptr.link;    }   }     //defin the delete function    public void deletefromlinker(char ch) {   NODE ptr;   NODE p;    ptr = head.link;   p = head;    while( ptr != null)   {    
    if(ch == ptr.info)    {    
     //实现数据删除      p.link = ptr.link;    
     System.gc();     break;     }    else   
     {     p = ptr;       ptr = ptr.link;    }     }   }       //defin the print linker  public void printlinker()  {   NODE ptr;    ptr = head.link;   while (ptr != null)   {   
     System.out.print("  " + ptr.info + "->");    ptr = ptr.link;   }    System.out.println("null");      }  }
  • 相关阅读:
    mysql5.6.20安装
    唯一识别Windows机器的最佳方法
    不用Root在安卓手机上运行Kali_Linux
    在Windows 7和10上显示上次登录帐户信息
    优化非活动窗口的颜色
    Windows10中以管理员身份打开命令提示符
    在Windows10中更改”WIN+E“快捷键打开目标
    在任务管理器中显示所有CPU内核性能
    Windows启动控制台登录模式
    Fluent Terminal
  • 原文地址:https://www.cnblogs.com/0927wyj/p/5053535.html
Copyright © 2011-2022 走看看