Ваши интерфейсы немного отличаются. Давайте начнем там и посмотрим, поможет ли это вам над вашим горбом.
stack.top()
обычно заглядывает в пункт, но не удаляет его. Это не кажется полезным для переноса из одного стека в пыльник. У вас уже есть isEmptyStack(), чтобы проверить, существует ли верхний элемент.
stack.pop()
обычно занимает верхний элемент из стека. Это полезно для передачи.
stack.push(item)
размещает элемент на верхней части стека. Это полезно для передачи.
stack.push()
как раз и кажется неправильным. Что?
Надеюсь, после реализации этих методов остальное начнет иметь смысл с английского описания проблемы, которую вы предоставили.
Update: это то, что вы хотите:
|a | | | | | | | | | |c |
|b | | |b | | | |b | | |b |
|c | | |c |a | |c |a | | |a |
1 tmp 2 1 tmp 2 1 tmp 2 1 tmp 2
| | | | | | | | |a
| |b | | | |b | | |b
| |a |c | |a |c | | |c
1 tmp 2 1 tmp 2 1 tmp 2
Теперь, просто нажмите, поп, и IsEmptyStack, без присвоения стеков друг к другу (такого рода поражения цели задания), ты можешь сделать это?
Что связаноStackType? И почему вы не можете просто скопировать? Вы уже копируете в tmpStack. – pezcode
Мне нужно пересмотреть этот вопрос. –
linkedstacktype is constructor –