- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有这部分语法
S ‐> S a | S b a | a | S b c S | S b c b | c S | c b
我需要使用它来创建一些 SD 集,然后在解析表上使用它。
但是,在此之前,我应该将其转换为自上而下的可解析语法。
我的问题是你是怎么做到的?我知道你必须摆脱左递归,但我该怎么做呢?
我阅读了维基百科文章和其他一些来自大学的文章,但我不知道应该怎么做。
你能帮我一些忙吗?
1 Câu trả lời
这是一般算法:
每个规则都喜欢
A -> Aa
A -> b
成为
A -> bA'
A'-> aA'
A'-> e
TRONG và
表示空(epsilon)。
所以对于你的情况,你可以从
bắt đầuS ‐> S a | S b a | a => S -> aS' , S' -> aS' | baS' | e
然后想出剩下的
关于compiler-construction - 如何将语法转换为自上而下的可解析语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29035807/
Trong một câu hỏi khác được trả lời ở đây, tôi tìm thấy mã JavaScript sau: function _dom_trackActiveElement(evt) { if (evt && evt.target)
Câu lệnh if (A == 0) OR (B == 0) có nghĩa là gì? Câu trả lời hay nhất chỉ để mỉa mai: if (A === 0 || B === 0) Về cú pháp, chúng ta tìm thấy một câu hỏi tương tự trên Stack Overflow:
var ret = [], xresult = document.evaluate(exp, rootEl, null, X
Tôi đang tìm kiếm một số mã JavaScript tương tự như ví dụ sau. Có ai giải thích được không, vì tôi chưa từng thấy JavaScript nào được viết như thế này. "SomethingHere" và dấu hai chấm biểu thị điều gì? Tôi đã quen nhìn thấy chức năng myFun
Đây là thủ tục của tôi: dấu phân cách // xóa thủ tục nếu tồn tại migContactToActor; tạo thủ tục migContactToActor(
Tôi đã gặp phải một vấn đề. Tôi đã sử dụng gcc để biên dịch/lắp ráp mã C của mình trong một thời gian và tôi đã quen với việc đọc cú pháp lắp ráp của Intel. Tôi đã sử dụng cờ -masm=intel khi tạo các tệp lắp ráp. Nhưng gần đây, do công ty chuyển đi nên tôi đã nhận được
Sự khác biệt giữa ngữ pháp từ trên xuống và từ dưới lên là gì? Có thể đưa ra một ví dụ thì tốt hơn. Câu trả lời hay nhất Đầu tiên, ngữ pháp không phải là từ trên xuống hay từ dưới lên, mà là trình phân tích cú pháp (mặc dù có một số ngữ pháp có thể được phân tích bằng cách này nhưng không thể bằng cách kia). Theo quan điểm thực tế, sự khác biệt chính là
Tôi biết đây là mã cẩu thả, nhưng đây là nó: hộp thoại hiển thị ("Khởi động Trình bảo vệ màn hình. Vui lòng nhập: ma trận, cà phê, bánh quế, ngôi sao, nước
Câu hỏi này đã có câu trả lời: Đặt tên cho vòng lặp (6 câu trả lời) Đã đóng 8 năm trước. Tôi đã thấy ký tự này được sử dụng trong C# như một phần mở rộng trong Java, nhưng gần đây tôi đã tìm thấy loo này trong mã
Tôi đang cố viết một hàm để kiểm tra xem một chuỗi có phải là chuỗi palindrome hay không, nhưng tôi nghĩ có một số lỗi trong cách tôi sử dụng con trỏ chuỗi. Có vấn đề gì với đoạn mã này vậy? #include #include #define Tối đa 1000 int IsPalin
Vì vậy, trong câu hỏi này tôi đã hỏi về cách một số Javascript được nén. Câu hỏi đã được trả lời, nhưng đoạn trích sau đây khiến tôi bối rối đến mức phải hỏi một câu hỏi khác. Ở đây: đối với (Y = 0; $ = 'zx
Giả sử tôi có một hàm chấp nhận các tham số này. int create(Ptr * p,void * (*insert)(void *, void *)) { //trả về thứ gì đó sau }
Câu hỏi này đã có câu trả lời: Toán tử '&' bitwise (6 câu trả lời) Đã đóng 5 năm trước. Tôi tìm thấy điều này trong mã, nhưng tôi chưa bao giờ gặp bất cứ điều gì giống như &, chỉ có && nếu ((mã & 1) =
Tôi đang gặp khó khăn khi xử lý cú pháp để kế thừa các lớp cũng như các hàm tạo và phương thức bên trong chúng. Tôi muốn triển khai lớp Date và lớp con Date_ISO để thiết lập ngày, tháng, năm theo thứ tự cụ thể và có phương thức ghi ngày, tháng, năm đó vào chuỗi. Tôi nghĩ lớp cơ sở Date của tôi đang hoạt động tốt
Tôi đang cố gắng điền dữ liệu vào một bảng thông qua một thủ tục được lưu trữ như thế này: SET @resultsCount = (SELECT COUNT(*) FROM tableA); SET @i = 0; WHILE @i THEN
Có ai có thể giải thích được ký tự "<<" trong đoạn mã sau không? kiểm tra mysql<
Tôi vừa mới bắt đầu học MySQL và đây là câu hỏi của người mới bắt đầu và cũng là câu hỏi đầu tiên của tôi trên StackOverflow. Giả sử tôi có 12 trạng thái đơn hàng và tôi muốn chọn tổng số từ 5 trong số đó. Tôi sẽ sử dụng: SELECT SUM(tot
Nền tảng lập trình của tôi là một chút về Java mà tôi đã học ở trường. Không hiểu sao cú pháp JavaScript lại khiến tôi bối rối. Mã JavaScript sau đây là một mẫu cú pháp mà tôi không biết cách xây dựng: foo.ready = funct
Tôi đang đọc mã nguồn JavaScript và tôi chưa từng viết JavaScript trước đây. Tôi bối rối về một số cú pháp của nó. $(function () { window.onload=hàm
Tôi thậm chí còn không biết phải gọi tên những gì tôi muốn. Vậy hãy để tôi giải thích điều này bằng một ví dụ. Mặc dù Firefox sử dụng textContent, các trình duyệt khác cũng hỗ trợ thuộc tính innerText. Nhân tiện, vui lòng sửa cho tôi nếu tôi dùng thuật ngữ sai. Dù sao đi nữa, cho đến nay
Tôi là một lập trình viên xuất sắc, rất giỏi!