Skkn chuyên đề môn tin học cách sử dụng interval tree, binary indexed tree qua một số bài toán qui hoạch động

21 4 0
Skkn chuyên đề môn tin học cách sử dụng interval tree, binary indexed tree qua một số bài toán qui hoạch động

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

CÁCH SỬ DỤNG INTERVAL TREE, BINARY INDEXED TREE QUA MỘT SỐ BÀI TOÁN QUI HOẠCH ĐỘNG Cấu trúc liệu (CTDL) thành tố quan trọng để đưa giải thuật có hiệu Trong năm gần đây, giới hạn nhớ khơng cịn rào cản cho tập tin học tốn với kích thước liệu lớn xuất phổ biến kỳ thi Để có chương trình hiệu (đo tốc độ tính tốn) giải tập vậy, việc sử dụng CTDL để lưu trữ thông tin điều kiện tiên Có nhiều loại CTDL khác Tuy nhiên mức độ khó thi cấp quốc gia kể đến CTDL sau: Ngăn xếp (stack) Hàng đợi hai đầu (double queue) Đống (heap) RMQ (Range Minimum Query) IT (Interval Tree) BIT (Binarry Indexed Tree) Page skkn Trong chun đề này, tơi khơng có ý định trình bày lại CTDL nói Trình bày chi tiết chủ đề thầy Lê Minh Hồng trình bày chun đề bồi dưỡng giáo viên chuyên sách giáo khoa chuyên tin (Tập 2) Ở đây, dừng lại việc phân tích cách sử dụng hai cấu trúc IT BIT giải số toán quy hoạch động Qua khái quát hóa số nguyên lý chung (theo đánh giá chủ quan tôi) việc áp dụng cấu trúc Bài toán 1:Cho dãy số Hãy tìm dãy (khơng thiết gồm phần tử liên tiếp) tăng dài Đây toán qui hoạch động quen thuộc: Đặt f[i] độ dài dãy tăng dài kết thúc Ta có cơng thức qui hoạch động sau: (1) Có nhiều cách để tính tốn (1) thời gian O(log n) Một cách sử dụng tìm kiếm nhị phân Ở đây, tiếp cận theo cách khác: Page skkn Skkn.chuyen.de.mon.tin.hoc.cach.su.dung.interval.tree binary.indexed.tree.qua.mot.so.bai.toan.qui.hoach.dongSkkn.chuyen.de.mon.tin.hoc.cach.su.dung.interval.tree binary.indexed.tree.qua.mot.so.bai.toan.qui.hoach.dongSkkn.chuyen.de.mon.tin.hoc.cach.su.dung.interval.tree binary.indexed.tree.qua.mot.so.bai.toan.qui.hoach.dongSkkn.chuyen.de.mon.tin.hoc.cach.su.dung.interval.tree binary.indexed.tree.qua.mot.so.bai.toan.qui.hoach.dong với i=1,2, ,n Bất đẳng thức Trước tiên giả thiết viết dạng Do việc tính (1) qui việc tính f[1], f[2], với i=1,2, ,n f[i] tính cách lấy giá trị lớn giá trị f tính có điểm cuối thuộc [1 ai-1] (mỗi lần có giá trị f[i] ta ghi nhận vào vị trí ai[1 n]) ta sử dụng BIT IT để thực truy vấn tìm max này) Dưới mã chương trình viết IT: void update(int r,int k,int l,int u,int v,int val) { if (vl) return; if (u

Ngày đăng: 29/12/2023, 03:38

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

  • Đang cập nhật ...

Tài liệu liên quan