<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    tbwshc

    實(shí)現(xiàn)單鏈表的用java簡(jiǎn)單的基本操作

    package com.tyxh.link;
      //節(jié)點(diǎn)類
      public class Node {
      protected Node next; //指針域
      protected int data;//數(shù)據(jù)域
      public Node( int data) {
      this. data = data;
      }
      //顯示此節(jié)點(diǎn)
      public void display() {
      System. out.print( data + " ");
      }
      }
      package com.tyxh.link;
      //單鏈表
      public class LinkList {
      public Node first; // 定義一個(gè)頭結(jié)點(diǎn)
      private int pos = 0;// 節(jié)點(diǎn)的位置
      public LinkList() {
      this. first = null;
      }
      // 插入一個(gè)頭節(jié)點(diǎn)
      public void addFirstNode( int data) {
      Node node = new Node(data);
      node. next = first;
      first = node;
      }
      // 刪除一個(gè)頭結(jié)點(diǎn),并返回頭結(jié)點(diǎn)
      public Node deleteFirstNode() {
      Node tempNode = first;
      first = tempNode. next;
      return tempNode;
      }

      // 在任意位置插入節(jié)點(diǎn) 在index的后面插入
      public void add(int index, int data) {
      Node node = new Node(data);
      Node current = first;
      Node previous = first;
      while ( pos != index) {
      previous = current;
      current = current. next;
      pos++;
      }
      node. next = current;
      previous. next = node;
      pos = 0;
      }
      // 刪除任意位置的節(jié)點(diǎn)
      public Node deleteByPos( int index) {
      Node current = first;
      Node previous = first;
      while ( pos != index) {
      pos++;
      previous = current;
      current = current. next;
      }
      if(current == first) {
      first = first. next;
      } else {
      pos = 0;
      previous. next = current. next;
      }
      return current;
      }
      // 根據(jù)節(jié)點(diǎn)的data刪除節(jié)點(diǎn)(僅僅刪除第一個(gè))
      public Node deleteByData( int data) {
      Node current = first;
      Node previous = first; //記住上一個(gè)節(jié)點(diǎn)
      while (current. data != data) {
      if (current. next == null) {
      return null;
      }
      previous = current;
      current = current. next;
      }
      if(current == first) {
      first = first. next;
      } else {
      previous. next = current. next;
      }
      return current;
      }
      // 顯示出所有的節(jié)點(diǎn)信息
      public void displayAllNodes() {
      Node current = first;
      while (current != null) {
      current.display();
      current = current. next;
      }
      System. out.println();
      }
      // 根據(jù)位置查找節(jié)點(diǎn)信息
      public Node findByPos( int index) {
      Node current = first;
      if ( pos != index) {
      current = current. next;
      pos++;
      }
      return current;
      }
      // 根據(jù)數(shù)據(jù)查找節(jié)點(diǎn)信息
      public Node findByData( int data) {
      Node current = first;
      while (current. data != data) {
      if (current. next == null)
      return null;
      current = current. next;
      }
      return current;
      }
      }
      package com.tyxh.link;
      //測(cè)試類
      public class TestLinkList {
      public static void main(String[] args) {
      LinkList linkList = new LinkList();
      linkList.addFirstNode(20);
      linkList.addFirstNode(21);
      linkList.addFirstNode(19);
      //19,21,20
      linkList.add(1, 22); //19,22,21,20
      linkList.add(2, 23); //19,22,23,21,20
      linkList.add(3, 99); //19,22,23,99,21,20
      linkList.displayAllNodes();
      // Node node = linkList.deleteFirstNode();
      // System.out.println("node : " + node.data);
      // linkList.displayAllNodes();
      // node = linkList.deleteByPos(2);
      // System.out.println("node : " + node.data);
      // linkList.displayAllNodes();
      // linkList.deleteFirstNode();
      Node node = linkList.deleteByData(19);
      // Node node = linkList.deleteByPos(0);
      System. out.println( "node : " + node. data);
      linkList.displayAllNodes();
      Node node1 = linkList.findByPos(0);
      System. out.println( "node1: " + node1. data);
      Node node2 = linkList.findByData(22);
      System. out.println( "node2: " + node2. data);
      }
      }

    posted on 2013-09-10 17:10 chen11-1 閱讀(1323) 評(píng)論(0)  編輯  收藏 所屬分類: java

    主站蜘蛛池模板: 一级毛片在播放免费| jizz免费观看| 曰批全过程免费视频网址| 亚洲VA中文字幕不卡无码| 亚洲高清无在码在线电影不卡| 18禁在线无遮挡免费观看网站| 亚洲五月综合缴情在线观看| 亚洲情A成黄在线观看动漫软件| 亚洲免费在线视频播放| 亚洲一区二区三区乱码A| 一级毛片人与动免费观看| a级亚洲片精品久久久久久久| 国产精品免费久久久久电影网| 丝袜熟女国偷自产中文字幕亚洲| 91在线免费观看| 免费一级成人毛片| 亚洲 暴爽 AV人人爽日日碰| 女人被免费视频网站| 春暖花开亚洲性无区一区二区 | 免费看一级一级人妻片| 100000免费啪啪18免进| 国产国拍亚洲精品mv在线观看 | 九九久久精品国产免费看小说| 亚洲欧洲久久av| 暖暖免费日本在线中文| 亚洲国产精品成人综合久久久 | 亚洲欧洲日产国码无码久久99| 日韩免费电影网站| 亚洲精品一卡2卡3卡四卡乱码| 免费观看亚洲人成网站| 97人妻精品全国免费视频| 亚洲色偷偷色噜噜狠狠99| 亚洲免费在线观看| 亚洲免费在线视频播放| 菠萝菠萝蜜在线免费视频| 精品久久久久久久免费加勒比| 亚洲综合欧美色五月俺也去| 亚洲国产午夜中文字幕精品黄网站| 精品一区二区三区免费| 亚洲欧美日韩中文无线码| 亚洲国产精品无码久久久秋霞2|