分析: 
上述节点具备如下特征: 
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");    
 } 
}

java中实现链表(转)的更多相关文章

  1. Java中的链表数据结构

    首先,我们来定义一个链表的数据结构,如下: 1 public class Link { 2 private int value; 3 private Link next; 4 public void ...

  2. java中的链表编写

    通过while循环取出节点内容 class Node{//定义一个节点类,用于保存数据和取得下一个节点 private String data;//节点中数据 private Node next;// ...

  3. Java中LinkedList的remove方法真的耗时O(1)吗?

    这个问题其实来源于Leetcode的一道题目,也就是上一篇日志 LRU Cache.在使用LinkedList超时后,换成ArrayList居然AC了,而问题居然是在于List.remove(Obje ...

  4. java算法01 - 链表

    1.链表 在Java中实现链表,每个节点都有一个值,然后把它链接到下一个节点.下面来看一下节点的实现 class Node<E> { private E e; private Node&l ...

  5. Java中的List集合和迭代器

    一.Java中的List集合. 终于有时间来好好整理一下Java中的集合. 首先要讲的就是List集合.Java中List集合主要将两个: 第一个是底层使用数组维护的ArrayList,第二个是底层是 ...

  6. java中如何使用列表数组

    java中如何使用列表数组 觉得有用的话,欢迎一起讨论相互学习~Follow Me 转载链接 https://blog.csdn.net/hgtjcxy/article/details/8183519 ...

  7. 面试大总结:Java搞定面试中的链表题目总结

    package LinkedListSummary; import java.util.HashMap; import java.util.Stack; /** * http://blog.csdn. ...

  8. java中的集合链表

    java中的集合类有很多种,每个都有自己的一些特点,推荐你专门在这方面研究一下,比方Vector,ArrayList,,LinkedList,Hashtable等,其中你问到的链表,是不是指Linke ...

  9. (转)面试大总结之一:Java搞定面试中的链表题目

    面试大总结之一:Java搞定面试中的链表题目 分类: Algorithm Interview2013-11-16 05:53 11628人阅读 评论(40) 收藏 举报 链表是面试中常出现的一类题目, ...

随机推荐

  1. (原创)Python文件与文件系统系列(5)——stat模块

    stat模块中定义了许多的常量和函数,可以帮助解释 os.stat().os.fstat().os.lstat()等函数返回的 st_result 类型的对象. 通常使用 os.path.is*() ...

  2. 中石油-高精度阶乘-java

    问题 F: [高精度]高精度阶乘 时间限制: 1 Sec  内存限制: 64 MB提交: 49  解决: 13[提交][状态][讨论版] 题目描述 <魔法宝典>对于修罗王是如此重要,是因为 ...

  3. codeforces C. Vasily the Bear and Sequence 解题报告

    题目链接:http://codeforces.com/problemset/problem/336/C 题目意思:给出一个递增的正整数序列 a1, a2, ..., an,要求从中选出一堆数b1, b ...

  4. jquery easy ui 1.3.4 Tree树形菜单(9)

    9.1.创建树形菜单 <ul id="tt" class="easyui-tree"> <li><span>第一级</ ...

  5. Mac OS X 上的安装Lisp开发环境

    到网站:https://common-lisp.net/project/lispbox/ 下载lispbox 解压下载下来的包,找到Emacs 测试: 我们也可以使用homebrew来安装lisp的解 ...

  6. ASP.NET Web.Config 读写辅助类

    using System; using System.Configuration; using System.Web; using System.Web.Configuration; namespac ...

  7. poj 2923 状压dp+01背包

    好牛b的思路 题意:一系列物品,用二辆车运送,求运送完所需的最小次数,两辆车必须一起走 解法为状态压缩DP+背包,本题的解题思路是先枚举选择若干个时的状态,总状态量为1<<n,判断这些状态 ...

  8. (六)WebRTC手记之WebRtcVideoEngine2模块

    转自:http://www.cnblogs.com/fangkm/p/4401143.html 终于讲到视频数据的编码发送模块了,不容易.总体来说也看了不少时间WebRTC的源码了,最大的感触就是各个 ...

  9. IE8上传文件时文件本地路径变成"C:\fakepath\"的问题

    转自:http://yunzhu.iteye.com/blog/1116893 在使用<input id="file_upl" type="file" / ...

  10. c++find函数用法

    头文件 #include <algorithm> 函数实现 template<class InputIterator, class T> InputIterator find ...