刚刚完成春假,很难记住这些东西。
现在我正在尝试创建一个Lstack类,它将创建一个实现为节点链接列表的堆栈ADT。
这是Lstack类
public class Lstack {
int numUsed = 0;
Lstack list = new Lstack();
public Lstack(){
}
public void push(Car x){
}
}
如何将Car x(一个物体)推入堆栈?
答案 0 :(得分:5)
堆栈是LIFO
结构
因此,如果您使用linked list
支持实施,那么您应确保push
进入list
pop
的{{1>} {{1}} 。
由于这是一项作业,我不会提供更多信息。这应该足够了
答案 1 :(得分:0)
堆栈是后进/先出(LIFO)结构。所以我会这样:
Car
类必须具有同一类的next
成员:
class Car {
String brand;
Car next;
public Car(String brand, Car car) {
this.brand = brand;
next = car;
}
// And the class code goes on
}
关于链表:
class Llist {
Car top;
public Llist() {
top = null;
}
public void push(String carBrand) {
top = new Car(carBrand, top);
}
}
只是一个例子。
答案 2 :(得分:0)
我做对了吗?
public class Lstack {
int size;
int numUsed = 0;
Car[] list;
public Lstack(){
list = new Car[size];
}
public void push(Car x){
list[numUsed] = x;
numUsed++;
}
public Car pop(){
Car temp;
numUsed--;
temp = list[numUsed];
return temp;
}
public boolean isEmpty(){
if(numUsed==0){
return true;
}
else
return false;
}
public int size(){
return numUsed;
}
public void display(){
System.out.println("--------------------------------------------");
System.out.print("TOP | ");
for(int i = 0; i < numUsed; i++){
System.out.print(list[i].plate +" | ");
}
}
}