Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Xây dựng Pushdown Automata cho L = {0^(n+m) 1^m 2^n | m,n ≥ 0} trong C++


Xây dựng PDA: số '0' = số '1' + số '2'. Chuỗi rỗng được chấp nhận.

Các trạng thái

  • q0: Đẩy '0'; gặp '1' pop '0' chuyển q1; gặp '2' pop '0' chuyển q2; chuỗi rỗng chuyển qf.
  • q1: Pop '0' cho '1'; chuỗi rỗng chuyển qf; gặp '2' pop '0' chuyển q2.
  • q2: Pop '0' cho '2'; chuỗi rỗng chuyển qf.
  • qf: Trạng thái chấp nhận.

Bài viết mô tả lý thuyết PDA, không cung cấp mã C++ thực thi.