Sobes.tech
Junior — Middle

Как може да се създаде структура от данни стек на езика Dart?

sobes.tech AI

Отговор от AI

В Dart можете да реализирате структура от данни стек, използвайки клас, който използва списък (List) за съхранение на елементите. Основните операции на стека са добавяне (push) и премахване (pop) на елементи от края на списъка.

class Stack<T> {
  final List<T> _items = [];

  void push(T item) {
    _items.add(item);
  }

  T pop() {
    if (_items.isEmpty) {
      throw StateError('Празен стек');
    }
    return _items.removeLast();
  }

  bool get isEmpty => _items.isEmpty;

  int get length => _items.length;
}

void main() {
  var stack = Stack<int>();
  stack.push(10);
  stack.push(20);
  print(stack.pop()); // 20
  print(stack.pop()); // 10
}

Този клас може да се използва за съхраняване на елементи от всякакъв тип благодарение на генериците.