Decode360's Blog

          業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
            397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
          堆棧--Stack類學習
          ?
          ??? 最近學習數據結構的時候,用java實現了一下堆棧,就是用stack這個類,在這里記錄一下學習過程。
          ?
          ?
          Class Stack<E>
          						
          								java.lang.Object
          						
          						
          						
          								java.util.AbstractCollection
          						
          						<E>
               └ 
          						
          								java.util.AbstractList
          						
          						<E>
                    └ 
          						
          								java.util.Vector
          						
          						<E>
                        └ java.util.Stack<E>
          				
          ?
          ?
          Method Summary
          boolean empty ()
          ????????? Tests if this stack is empty.
          ? E peek ()
          ????????? Looks at the object at the top of this stack without removing it from the stack.
          ? E pop ()
          ????????? Removes the object at the top of this stack and returns that object as the value of this function.
          ? E push ( E item)
          ????????? Pushes an item onto the top of this stack.
          int search ( Object o)
          ????????? Returns the 1-based position where an object is on this stack.
          ?
          ?
          ?
          另外還繼承了java.util.Vector<E>中的基本方法,常見的用法如下所示:
          ?
          ?
          import java.util.*;
          ?
          public class kkk{
          public static void main(String args[]){
          ? int m = 1;
          ? Stack<Integer> a = new Stack<Integer>();
          ?
          ? a.push(m);?? //壓入1
          ? a.push(m+1); //壓入2
          ? a.push(m+2); //壓入3
          ? a.push(m+3); //壓入4
          ? a.push(m+4); //壓入5
          ??? System.out.println(a.push(m+5)); //壓入6,并返回當前值
          ?
          ??? System.out.println(a.empty());?? //判斷棧是否為空,為空則TRUE
          ??? System.out.println(a.isEmpty()); //判斷棧是否為空,為空則TRUE
          ???
          ? System.out.println(a.size());???? //返回當前棧長度
          ? System.out.println(a.toString()); //返回當前棧的內容
          ?
          ? System.out.println(a.lastElement());? //返回當前棧中的最后一個元素6
          ? System.out.println(a.firstElement()); //返回當前棧中的第一個元素1
          ?
          ? System.out.println(a.peek()); //返回當前值6
          ? System.out.println(a.pop());? //返回當前值并壓出6
          ? System.out.println(a.pop());? //返回當前值并壓出5
          ?
          ? System.out.println(a.search(3));
          ? //搜索“3”在棧中出現的位置,頂端為1,其余依次累加,若有多個則返回第1個的位置
          ?
          ? a.add(m+9); //壓入10,跟push一樣的效果
          ? a.clear(); //清空棧
          ?
          ??? System.out.println(a.empty());?? //判斷棧是否為空,為空則TRUE
          ??? System.out.println(a.isEmpty()); //判斷棧是否為空,為空則TRUE
          ?
          }
          }
          ?
          ?
          ?
          posted on 2008-12-01 22:42 decode360 閱讀(186) 評論(0)  編輯  收藏 所屬分類: 04.Java

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


          網站導航:
           
          主站蜘蛛池模板: 柳林县| 禄丰县| 汉寿县| 周宁县| 阆中市| 宁夏| 竹山县| 年辖:市辖区| 张家港市| 宿松县| 荆州市| 德庆县| 绥芬河市| 边坝县| 太仓市| 麟游县| 磐石市| 怀化市| 迭部县| 杭锦后旗| 漳州市| 城口县| 峨边| 察雅县| 四会市| 平和县| 滦南县| 留坝县| 远安县| 彰武县| 广平县| 洛隆县| 漳州市| 贡觉县| 安溪县| 黎平县| 莱芜市| 桃园市| 连州市| 河曲县| 漳平市|