Вы можете использовать стек вызовов, но это не будет полезно в большинстве сценариев.
Предположим, у вас есть интерактивное приложение, в котором пользователь может выбрать push или pop.
У вас будет метод с одной локальной переменной, которая содержит верхний элемент стека.
Этот метод попросит пользователя выбрать, следует ли поместить последний элемент или нажать новый элемент.
Если пользователь выбирает push, метод выдает рекурсивный вызов самому себе, передавая вставленный элемент в качестве аргумента (который будет храниться в локальной переменной вызываемого метода).
Если пользователь выбирает pop, метод возвращает свою локальную переменную вызывающему методу.
Вот некоторые псевдо-код:
public static Object stack (Object element)
{
Object top = element;
int input = 0;
while (input != 2) {
input = ... // get user input - 1 for push 2 for pop
if (input == 1) {
Object newElement = ... // get input from user
Object poppedElement = stack (newElement); // push the new element
}
}
return top; // pop the top of the stack
}
Да. На самом деле Java имеет ['Stack'] (http://docs.oracle.com/javase/7/docs/api/java/util/Stack.html). Что вы пробовали? –
Конечно, вы можете использовать любой класс для данных. В большинстве случаев вам просто нужно добавить некоторые указатели на другие элементы. – Sirko
Да, но это был бы связанный список в его ядре ... – MadProgrammer