Nguyên Tắc Kết hợp(tt) Áp dụng một số thủ thuật trong các bài toán tin học(tt) Áp dụng một số thủ thuật trong các bài toán tin học(tt)

Một phần của tài liệu phương pháp nghiên cứu khoa học trong tin học (Trang 126)

- Tách phần gây “phiền phức” (tính chất “phiền phức”) hay ngược lại, tách phần duy nhất “cần thiết” (tính chất “cần

V.3Nguyên Tắc Kết hợp(tt) Áp dụng một số thủ thuật trong các bài toán tin học(tt) Áp dụng một số thủ thuật trong các bài toán tin học(tt)

V.3 Nguyên Tắc Kết hợp (tt)

Dữ liệu ở hình bên trái, nếu xử lý theo chiến lược trên-xuống (top-down) là tốt nhất vì chỉ duyệt có một đường dẫn là A.B.C, nếu xử lý theo chiến lược dưới lên (bottom-up) thì phải viếng thăm tất cả các nút có giá trị là 5.

Dữ liệu ở hình ở giữa, chúng ta thấy có nhiều đường dẫn A.B.C nhưng chỉ có một đường dẫn thỏa mãn điều kiện trong Where, nếu xử lý theo chiến lược dưới-lên (bottom-up) thì tốt nhất.

Áp dụng một số thủ thuật trong các bài toán tin học(tt)

Tuy nhiên trong hình bên phải, nếu xử lý theo chiến lược trên-xuống (top-down) phải viếng thăm tất cả các nút lá nhưng chỉ có một nút thỏa điều kiện. Nếu xử lý theo chiến lược dưới-lên (bottom up) thì xác định được một đối tượng thỏa điều kiện trong Where nhưng phải viếng thăm tất cả các nút ở phần bên phải của dữ liệu vì trên C còn có các đối tượng B ở phía bên phải. Trong trường hợp này, nếu chúng ta xử lý theo chiến lược kết hợp (hybrid), dùng chiến lược xử lý trên-xuống (top-down) để lấy tất cả các đối tượng A.B, kế đó dùng chiến lược xử lý dưới-lên (bottom up) xuất phát từ nút lá duyệt ngược lên một mức thì gặp kết quả duyệt từ trên xuống, đó là đường dẫn A.B.C đây là kết quả của câu truy vấn. Do đó chiến lược tốt nhất cho trường hợp nà là chiến lược kết hợp

V.3 Nguyên Tắc Kết hợp (tt)

Vì vậy chúng ta thấy trong dữ liệu bán cấu trúc, nếu không có chiến lược kết hợp thì rất nhiều trường hợp khi thực hiện câu truy vấn việc xử lý sẽ rất chậm hoặc thậm chí kết quả không được chính xác.

Một phần của tài liệu phương pháp nghiên cứu khoa học trong tin học (Trang 126)