【JAVA】写一个类,实现栈这种数据结构,要求底层数据使用ArrayList存储。

JAVA初学者向大侠们请教了,希望JAVA高手帮忙做一下,跪谢了~~~... JAVA初学者向大侠们请教了,希望JAVA高手帮忙做一下,跪谢了~~~ 展开
 我来答
ZC09V
2009-07-17 · TA获得超过1762个赞
知道小有建树答主
回答量:1817
采纳率:0%
帮助的人:1090万
展开全部
实现了栈的基本功能.写的比较仓促,没加安全性的检查.

import java.util.ArrayList;

public class Stack {
private ArrayList stack;
public Stack()
{
stack = new ArrayList();
}
public void clear()
{
stack.clear();
}
public int getTop()
{
int temp = (Integer)stack.get(stack.size()-1);
return temp;
}
public void push(int ele)
{
stack.add(ele);
}
public int pop()
{
int temp = (Integer)stack.get(stack.size()-1);
stack.remove(stack.size()-1);
return temp;
}
public int getSize()
{
return stack.size();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Stack test = new Stack();
test.push(5);
test.push(6);
System.out.println(test.pop());
System.out.println(test.getTop());
System.out.println(test.pop());
test.clear();
System.out.println(test.getSize());
}

}
百度网友7c3b00b06
2009-07-17 · 超过15用户采纳过TA的回答
知道答主
回答量:106
采纳率:0%
帮助的人:47.6万
展开全部
栈的特点的就是后进先出,那么你就linkedList,如果要添加一个元素,就把他存到最后一个位置,要取一个元素,也从最后开始取就可以实现了,只有linkedList才有存,取,删最后一个元素这个方法,所以要要用linkedList
代码如下:

public class StudyTest {
private LinkedList<String> list = new LinkedList<String>();

public String get() {
return list.getLast();
}
public void add(String str) {
this.list.addLast(str);
}
public void remove(){
this.list.removeLast();
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
teapot427
2009-07-17 · TA获得超过118个赞
知道答主
回答量:170
采纳率:0%
帮助的人:200万
展开全部
栈肯定用LinkedList比较好。
这是thinking in java 一书中的方法。
import java.util.*;
public class StudyL{
private LinkedList list = new LinkedList();
public void push(Object v){list.addFirst(v);}
public Object top(){return list.getFirst();}
public Object pop(){return list.removeFirst();}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2009-07-17
展开全部
既然是底层实现,那我们就没必要在乎低层用的到底是什么数据结构了,可以是ArrayList,linkedList甚至是数组.当然是在不考虑效率的前提下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式