Bài giảng Cấu trúc dữ liệu và giải thuật – Bài 11: Ký pháp nghịch đảo Balan (Reverse Polish Notation)

10 12 0
Bài giảng Cấu trúc dữ liệu và giải thuật – Bài 11: Ký pháp nghịch đảo Balan (Reverse Polish Notation)

Đang tải... (xem toàn văn)

Thông tin tài liệu

V ới cách viết này, việc tính toán dựa trên thứ tự của bi ểu thức, kết hợp với thứ tự ưu tiên của phép toán. RPN có tính logic cao vì ng ười dùng đưa biểu thức,[r]

(1)

Giảng viên: TS Ngo Huu Phuc Tel: 0438 326 077 Mob: 098 5696 580

Email:

Cấu trúc liệu giải thuật

(2)

Bài 11: Ký pháp nghịch đảo Balan

Nội dung:

11.1 Reverse Polish Notation (RPN) (6)

11.2 Chuyển đổi biểu dạng Infix sang RPN (7) 11.3 Ví dụ chuyển đổi từ Infix sang RPN (9) 11.4 Prefix Notation (3)

Tham khảo:

1 Data structures and Algorithms Stacks.htm

2 Kyle Loudon Mastering Algorithms, Chapter Stacks and Queues

3 Elliz Horowitz – Fundamentals of Data Structures, Chapter Stacks and

Queues

(3)

11.1 Ký pháp nghịch đảo Balan (RPN)

Nội dung phần 11.1:

(4)

11.1.1 Khái niệm Ký pháp nghịch đảo Balan

 Ký pháp nghịch đảo Balan, gọi Postfix, Charles Hamblin đề xuất vào năm 1950s…

 Ký pháp lấy ý tưởng Polish notation, đề xuất vào năm 1920 nhà toán học người Balan có tên Jan Łukasiewicz (Trong số tài liệu gọi ký pháp Łukasiewicz)

(5)

11.1.2 Tại sử dụng RPN? (1/3)

RPN cho phép giảm thời gian việc tính biểu thức Người dùng không cần quan tâm đến dấu

ngoặc biểu thức

Với ký pháp cho phép thấy kết sau phép toán

(6)

11.1.2 Tại sử dụng RPN?(2/3)

Với việc cho thấy kết ngay, đó, người sử dụng kiểm tra kết dễ hơn, nhanh

Với cách viết này, việc tính tốn dựa thứ tự biểu thức, kết hợp với thứ tự ưu tiên phép tốn RPN có tính logic cao người dùng đưa biểu thức,

(7)

11.1.2 Tại sử dụng RPN?(3/3)

Xem xét biểu thức đại số dạng Infix sau: + * = ?

Kết hay 9?

Trả lời: kết phép * có độ ưu tiên cao phép + Xem xét ví dụ: (1+2) * 3?

Kết

(8)

11.1.3 Một số ví dụ RPN (1/2)

Xem xét ký pháp RPN sau: + *

 Kết biểu thức bao nhiêu?

 + → + =

 * → * = 54

Biểu thức + * tương tự biểu thức dạng Infix (4+5)*6

Các bước thực hiện:

(9)

11.1.3 Một số ví dụ RPN(2/2)

Xem xét biểu thức dạng Postfix: + *

 Kết biểu thức bằng?

 + → + =

 * → * = 54

Biểu thức + * tương đương với biểu thức dạng Infix: * (4 + 5)

Các bước thực hiện:

(10)

11.2 Chuyển đổi biểu dạng Infix sang RPN

11.2.1 Ví dụ chuyển đổi biểu thức dạng Infix sang RPN

11.2.2 Thuật toán chuyển đổi biểu thức dạng Infix sang RPN

Ngày đăng: 10/03/2021, 16:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan