Назад к задачам
IT OneПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Intern — Middle
6
Базовая реализация стека
Компании, где спрашивали:
Условие задачи
Необходимо реализовать простой стек с поддержкой базовых операций: добавление элемента, удаление верхнего элемента, просмотр верхнего без удаления и проверка состояний стека (пустой/полный). Требуется создать класс Stack, в котором будут реализованы методы push(), pop(), peek(), isEmpty() и isFull(). В функции main() создаётся стек фиксированного размера, в него помещаются несколько значений, при попытке добавить элемент в переполненный стек обрабатывается исключение, после чего проверяется корректность работы методов peek и pop, выводя результаты сравнения.
public class HelloWorld {
public static void main(String[] args) {
Stack myStack = new Stack(2);
myStack.push(1);
myStack.push(2);
try {
myStack.push(3);
} catch (Exception e) {
}
System.out.println(myStack.peek() == 2);
System.out.println(myStack.pop() == 2);
System.out.println(myStack.peek() == 1);
System.out.println(myStack.pop() == 1);
System.out.println(myStack.pop() == null);
}
static class Stack {
public Stack(int size) {
}
void push(int element) {
}
Integer peek() {
return -1;
}
Integer pop() {
return -1;
}
boolean isEmpty() {
return false;
}
boolean isFull() {
return false;
}
}
}