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
}

ეს კლასი შეიძლება გამოყენებულ იქნას ნებისმიერი ტიპის ელემენტების შენახვისთვის, გენერიკების დახმარებით.