anybody know java? need a little help

m1ke101

Platinum Member
Mar 30, 2001
2,825
0
0
For some hw I'm supposed to have a method that is supposed to reverse a stack that is implemented by a double-linked list. The hint we got is that we're supposed to switch up the head and the tail, but I'm not sure what I'm supposed to do and what to do with the next and prev in my push() and pop() methods. Heres my methods

public void push(Object o)
{
ListNode secondtolast = tail.getPrev();
ListNode last = new ListNode(o, tail, secondtolast);
secondtolast.setNext(last);
tail.setPrev(last);
size++;
}

public Object pop() throws StackEmptyException
{
if (isEmpty())
throw new StackEmptyException("Stack is empty.");
ListNode last = tail.getPrev();
Object o = last.getElement();
ListNode secondtolast = last.getPrev();
tail.setPrev(secondtolast);
secondtolast.setNext(tail);
size--;
return o;
}
 

Torro

Member
Aug 14, 2002
163
0
0
unless i am mistaken
tail points to the head of the list?
so tail and head both point to the head of the list
so simply switching the head and tail wont do it

in fact, even if tail pointed to the end of the list switching them wont help since your next pointers will stil be going in the same direction

is this a standalone method? you cant change any of your previous methods to incorporate this one?
 

m1ke101

Platinum Member
Mar 30, 2001
2,825
0
0
actually I guess you can change the other methods but the thing is the operation has to be O(1). Feel stumped at the moment, need to get back in the swing of things. Any help would be appreciated.
 

lordex

Member
Feb 7, 2002
133
0
0
You can have a boolean flag that flips everytime the stack is reversed. Then in your push and pop wherever you call prev or next you check the flag first, if it's true, use prev, if it's false, use next.

A side note, you might want to take a closer look at your pop and push methods. They assume there are at least two nodes in the list, which isn't necessarily true all the time...
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |