Java每日一题系列(6)计算机等级考试

文章作者 100test 发表时间 2010:01:01 12:22:14
来源 100Test.Com百考试题网


  题目:
  用Java实现一个完整的双向链表类,并向外提供头、尾节点的增删操作,任意节点的增删操作,获取任意节点,并且要求链表能以字符形式进行输出!
  答:
  /**
  *
  */
  package util.
  /**
  * 这个一个完整的双向链表,通过private私有化基础的链表操作,通过public包装向外暴露操作柄。
  *
  */
  public class DoubleLinkedListTest {
  /**
  * The Test in main should not test in a time!
  * @param args
  */
  public static void main(String[] args) {
  DoubleLinkedList dll = new DoubleLinkedList().
  //Initialize
  dll.add("HH").
  dll.add("II").
  dll.add("JJ").
  System.out.println(dll).
  //add first
  dll.addFirst("AA").
  System.out.println(dll).
  //add last
  dll.addLast("ZZ").
  System.out.println(dll).
  //add in some location
  dll.add(4, "Daniel").
  System.out.println(dll).
  //remove first node
  dll.removeFirst().
  System.out.println(dll).
  //remove last node
  dll.removeLast().
  System.out.println(dll).
  //remove node in some index
  dll.remove(2).
  System.out.println(dll).
  //get the node of some index
  System.out.println(dll.get(1)).
  }
  }
  class DoubleLinkedList{
  //Node class
  public class Node{
  //Attribute of the node
  Object value.
  Node prev=this.
  Node next=this.
  //construct
  public Node(Object value){
  this.value=value.
  }
  //to String
  public String toString(){
  return value.toString().
  }
  }
  //Attributes of the DoubleLinkedList
  private Node head=new Node(null).
  private int size.
  //base operate of the doubleLinkedList
  private void addBefore(Node newNode, Node node){
  newNode.prev=node.prev.
  newNode.next=node.
  newNode.prev.next=newNode.
  newNode.next.prev=newNode.
  size .
  }

相关文章


Java基础学习中必须清楚的一些问题计算机等级考试
Java中静态变量的适用场景计算机等级考试
java面向对象编程笔记:数组的相关事项(14)计算机等级考试
java面向对象编程笔记:多线程的相关事项(13)计算机等级考试
Java每日一题系列(6)计算机等级考试
Java每日一题系列(5)计算机等级考试
Java每日一题系列(4)计算机等级考试
Java每日一题系列(3)计算机等级考试
httpclient抓取网页内容计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛