java练习题:用顺序表实现栈

//用顺序表实现栈

import java.util.Arrays;

public class MyStack{
    private int[] array=new int[10];
    private int top=0;

    private  void ensureCapacity(){
        //确认空间大小
        if(top<array.length) {
            return;
        }
        array=Arrays.copyOf(array,2*array.length);
    }
    public int push(int element){
        //头插

        ensureCapacity();
        array[top++]=element;
        return element;
    }
    public int pop(){
        //尾插
        return array[--top];
    }
    public int peek(){
        //返回最顶部的元素但不删除
        return array[top-1];
    }
    public boolean empty(){
        //看是否为空
        return top==0;
    }
    public int size(){
        //返回长度
        return top;
    }
    public int search(int element){
        //查找栈中是否有和element相等的元素,如果有返回该元素的下标
        for(int i=0;i<top;i++){
            if(array[i]==element){
                return i;
            }
        }
        //没有找到元素
        return  -1;
    }


}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值