Sobes.tech
Junior — Middle

Existujú zabudované implementácie dátovej štruktúry zásobník v jazyku Dart?

sobes.tech AI

Odpoveď od AI

V jazyku Dart ne existuje samostatná zabudovaná dátová štruktúra nazývaná "zásobník" ako samostatná trieda, ale zásobník možno implementovať pomocou štandardnej triedy List. V Dart-e List podporuje metódy add a removeLast, ktoré umožňujú jeho použitie ako zásobník (LIFO).

Príklad implementácie zásobníka založeného na List:

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

  void push(T value) => _list.add(value);

  T pop() => _list.removeLast();

  T get top => _list.isNotEmpty ? _list.last : null;

  bool get isEmpty => _list.isEmpty;
}

Preto sa pri práci so zásobníkmi v Dart-e zvyčajne používa List.