Implement DArrayStack class using dynamic array from section 6.1.2 to support un
ID: 3587339 • Letter: I
Question
Implement DArrayStack class using dynamic array from section 6.1.2 to support unlimited capacity.
import net.datastructures.*;
public class DArrayStack<E> implements Stack<E> {
private net.datastructures.ArrayList<E> data;
DArrayStack(){
data = new net.datastructures.ArrayList<E>();
}
DArrayStack(int capacity){
data = new net.datastructures.ArrayList<E>(capacity);
}
@Override
public void push(E e) {
// TODO Auto-generated method stub
}
@Override
public E top() {
// TODO Auto-generated method stub
return null;
}
@Override
public E pop() {
// TODO Auto-generated method stub
return null;
}
@Override
public int size() {
// TODO Auto-generated method stub
return 0;
}
@Override
public boolean isEmpty() {
// TODO Auto-generated method stub
return false;
}
}
2. (4) Implement array-based PositionalList<E>
import java.util.Iterator;
import net.datastructures.*;
public class MyArrayPositionalList<E> implements PositionalList<E>{
@Override
public int size() {
// TODO Auto-generated method stub
return 0;
}
@Override
public boolean isEmpty() {
// TODO Auto-generated method stub
return false;
}
@Override
public Position<E> first() {
// TODO Auto-generated method stub
return null;
}
@Override
public Position<E> last() {
// TODO Auto-generated method stub
return null;
}
@Override
public Position<E> before(Position<E> p) throws IllegalArgumentException {
// TODO Auto-generated method stub
return null;
}
@Override
public Position<E> after(Position<E> p) throws IllegalArgumentException {
// TODO Auto-generated method stub
return null;
}
@Override
public Position<E> addFirst(E e) {
// TODO Auto-generated method stub
return null;
}
@Override
public Position<E> addLast(E e) {
// TODO Auto-generated method stub
return null;
}
@Override
public Position<E> addBefore(Position<E> p, E e) throws IllegalArgumentException {
// TODO Auto-generated method stub
return null;
}
@Override
public Position<E> addAfter(Position<E> p, E e) throws IllegalArgumentException {
// TODO Auto-generated method stub
return null;
}
@Override
public E set(Position<E> p, E e) throws IllegalArgumentException {
// TODO Auto-generated method stub
return null;
}
@Override
public E remove(Position<E> p) throws IllegalArgumentException {
// TODO Auto-generated method stub
return null;
}
@Override
public Iterator<Position<E>> iterator() {
// TODO Auto-generated method stub
return null;
}
@Override
public Iterable<Position<E>> positions() {
// TODO Auto-generated method stub
return null;
}
}
Explanation / Answer
import net.datastructures.*;
public class DArrayStack<E> implements Stack<E> {
private net.datastructures.ArrayList<E> data;
DArrayStack(){
data = new net.datastructures.ArrayList<E>();
}
DArrayStack(int capacity){
data = new net.datastructures.ArrayList<E>(capacity);
}
@Override
public void push(E e) {
data.add(e);
}
@Override
public E top() {
if (!isEmpty())
return data.get(size()-1);
else {
System.out.println(“Stack is empty”);
return null;
}
}
@Override
public E pop() {
if (!isEmpty())
return data.remove(size()-1);
else {
System.out.println(“Stack is empty”);
return null;
}
}
@Override
public int size() {
return data.size();
}
@Override
public boolean isEmpty() {
return (data.size() == 0);
}
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.