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

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

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

    posts - 495,  comments - 11,  trackbacks - 0

    interface List
    {
    public void insert(int i,Object obj) throws Exception;?? //插入
    public Object delete(int i) throws Exception;??????????? //刪除
    public Object getData(int i) throws Exception;?????????? //取數據元素
    public int size();?????????????????????????????????????? //求元素個數
    public boolean isEmpty();??????????????????????????????? //是否空
    }

    //單鏈表結點類

    class Node
    {
    Object element;?? //數據元素
    Node next;?????? //表示下一個結點的對象引用

    Node(Node nextval)?? //用于頭結點的構造函數1
    {
    ?? next = nextval;
    }

    Node(Object obj,Node nextval)?? //用于其他結點的構造函數2
    {
    ?? element = obj;
    ?? next = nextval;
    }

    public Node getNext()?? //取next
    {
    ?? return next;
    }

    public void setNext(Node nextval)?? //置next
    {
    ?? next = nextval;
    }

    public Object getElement()??? //取element
    {
    ?? return element;
    }

    public void setElement(Object obj)?? //置element
    {
    ?? element = obj;
    }

    public String toString()?? //轉換element為String類型
    {
    ?? return element.toString();
    }
    }

    //單鏈表類

    class LinList implements List
    {
    Node head;????? //頭指針
    Node current;?? //當前結點位置
    int size;?????? //數據元素個數

    LinList()?????? //構造函數
    {
    ?? head = current = new Node(null);
    ?? size =0;
    }

    public void index(int i) throws Exception
    { //定位到第i個結點(以0開始記起)
    ????? if(i < -1 || i > size-1)
    ????? {
    ??? throw new Exception("參數錯誤!");
    ?? }
    ?? if(i == -1) return;
    ?? current = head.next;
    ?? int j = 0;
    ?? while((current != null) && j < i)
    ?? {
    ??? current = current.next;
    ??? j++;
    ?? }
    ???? }

    ???? public void insert(int i,Object obj) throws Exception
    ???? {
    ?? if(i < 0 || i > size)
    ?? {
    ??? throw new Exception("參數錯誤!");
    ?? }
    ?? index(i-1);
    ?? current.setNext(new Node(obj,current.next));
    ?? size++;
    }

    public Object delete(int i) throws Exception
    {
    ?? if(size == 0)
    ?? {
    ??? throw new Exception("鏈表已空無元素可刪除!");
    ?? }
    ?? if(i < 0 || i > size-1)
    ?? {
    ??? throw new Exception("參數錯誤!");
    ?? }
    ?? index(i-1);
    ?? Object obj = current.next.getElement();
    ?? current.setNext(current.next.next);
    ?? size--;
    ?? return obj;
    }

    public Object getData(int i) throws Exception
    {
    ????? if(i < -1 || i > size-1)
    ????? {
    ??? throw new Exception("參數錯誤!");
    ?? }
    ?? index(i);
    ?? return current.getElement();
    }

    public int size()
    {
    ?? return size;
    }

    public boolean isEmpty()
    {
    ?? return size == 0;
    }
    }

    /* 主函數
    * 刪除數列{1,2,3,4,5,6,7,8,9,10}里的元素5
    */

    public class LinListTest
    {
    public static void main(String args[])
    {
    ?? LinList linList = new LinList();
    ?? int n = 10;
    ?? try
    ?? {
    ??? for(int i = 0;i < n;i++)
    ??? {
    ???? linList.insert(i,new Integer(i+1));
    ??? }

    ??? linList.delete(4);

    ??? for(int i =0;i<linList.size;i++)
    ??? {
    ???? System.out.print(linList.getData(i)+"?? ");
    ??? }
    ?? }
    ?? catch(Exception e)
    ?? {
    ??? System.out.println(e.getMessage());
    ?? }
    }
    }

    posted on 2007-05-04 10:50 jadmin 閱讀(138) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久精品亚洲男人的天堂| 在线a级毛片免费视频| 亚洲国产精品狼友中文久久久| www.亚洲成在线| 丁香花免费高清视频完整版| 亚洲精品资源在线| 曰批全过程免费视频播放网站| 亚洲狠狠综合久久| 五月婷婷在线免费观看| 亚洲人成在线中文字幕| 野花高清在线观看免费3中文| 亚洲综合久久一本伊伊区| 大香人蕉免费视频75| 亚洲av无码片vr一区二区三区| 永久久久免费浮力影院| 美美女高清毛片视频黄的一免费| 国产成人免费片在线观看 | 亚洲午夜国产精品无卡| 国产成人无码免费看视频软件| 亚洲人成网站日本片| 免费涩涩在线视频网| 色网站在线免费观看| 亚洲精品成人片在线播放| 最近最新高清免费中文字幕 | 亚洲桃色AV无码| 久久国产色AV免费看| 国产精品亚洲片在线va| 国产真人无遮挡作爱免费视频| 特级毛片爽www免费版| 亚洲爱情岛论坛永久| 成人奭片免费观看| 人妻18毛片a级毛片免费看| 久久精品国产亚洲av麻豆| 国产日本一线在线观看免费| 另类小说亚洲色图| 亚洲a在线视频视频| 天天天欲色欲色WWW免费| 美女无遮挡拍拍拍免费视频| 亚洲欧洲校园自拍都市| 亚洲AV中文无码乱人伦在线视色 | 桃子视频在线观看高清免费完整|