Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

ความแตกต่างระหว่างการแยกจากบนลงล่างและจากล่างขึ้นบน


ในบทความนี้ เราจะเข้าใจความแตกต่างระหว่างการแยกวิเคราะห์จากบนลงล่างและจากล่างขึ้นบน −

การแยกวิเคราะห์จากบนลงล่างและการแยกวิเคราะห์จากล่างขึ้นบนเป็นเทคนิคต่างๆ ในการแยกวิเคราะห์ต้นไม้เพื่อให้ไปถึงจุดเริ่มต้นของต้นไม้ ซึ่งสามารถทำได้ในสองวิธีที่แตกต่างกัน ซึ่งมีการกล่าวถึงด้านล่าง

การแยกวิเคราะห์จากบนลงล่าง

  • เป็นเทคนิคการแยกวิเคราะห์ที่พิจารณาถึงระดับสูงสุดของต้นแยกวิเคราะห์ในขั้นต้น จากนั้นจึงค่อยทำงานลงไปที่ต้นไม้แยกวิเคราะห์
  • ทำได้โดยใช้กฎของไวยากรณ์
  • ใช้รากศัพท์ซ้ายสุด
  • วิธีการแยกวิเคราะห์นี้พยายามกำหนดที่มาซ้ายสุดสำหรับสตริงอินพุต
  • ที่นี่ การแยกวิเคราะห์จะทำจากส่วนบนสุดไปยังโหนดลีฟของทรีพาร์ส นั่นคือในลักษณะจากบนลงล่าง
  • การตัดสินใจหลักของเทคนิคการแยกวิเคราะห์นี้คือการเลือกกฎการผลิตที่ต้องใช้เพื่อสร้างสตริง

การแยกวิเคราะห์จากล่างขึ้นบน

  • เป็นเทคนิคการแยกวิเคราะห์ที่ตรงกันข้ามกับการแยกวิเคราะห์จากบนลงล่าง นั่นคือ ดูระดับต่ำสุดของต้นไม้แยกวิเคราะห์แล้วจึงไต่ขึ้นไปถึงต้นไม้แยกวิเคราะห์
  • ทำได้โดยใช้กฎของไวยากรณ์
  • ใช้เทคนิคการสืบหาที่เหมาะสมที่สุด
  • พยายามกำหนดที่มาที่เหมาะสมที่สุดสำหรับอินพุตที่แข็งแกร่ง
  • พยายามลดสตริงอินพุตให้เป็นสัญลักษณ์เริ่มต้นของไวยากรณ์
  • ทำได้โดยใช้กฎการผลิตที่ย่อสตริงเป็นสัญลักษณ์เริ่มต้น