bài giảng các chuyên đề (tài liệu nói về các chuyên đề thuật toán, đồ thị, cây của thầy lê minh hoàng khối chuyên tin đại học sư phạm hà nội

258 564 0
bài giảng các chuyên đề (tài liệu nói về các chuyên đề thuật toán, đồ thị, cây của thầy lê minh hoàng khối chuyên tin đại học sư phạm hà nội

Đ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

{ 1z Bài toán li t kê M CL C §0 GI I THI U §1 NH C L I M T S KI N TH C I S T H P I CH NH H P L P II CH NH H P KHÔNG L P III HOÁN V IV T H P .3 §2 PH NG PHÁP SINH (GENERATE) I SINH CÁC DÃY NH PHÂN DÀI N .6 II LI T KÊ CÁC T P CON K PH N T III LI T KÊ CÁC HOÁN V .9 §3 THU T TỐN QUAY LUI 12 I LI T KÊ CÁC DÃY NH PHÂN DÀI N .13 II LI T KÊ CÁC T P CON K PH N T 14 III LI T KÊ CÁC CH NH H P KHÔNG L P CH P K 15 IV BÀI TỐN PHÂN TÍCH S .16 V BÀI TOÁN X P H U .18 §4 K THU T NHÁNH C N 22 I BÀI TOÁN T I U 22 II S BÙNG N T H P .22 III MƠ HÌNH K THU T NHÁNH C N 22 IV BÀI TOÁN NG I DU L CH 23 V DÃY ABC 25 Lê Minh Hồng { 2z Bài tốn li t kê §0 GI I THI U Trong th c t , có m t s tốn u c u ch rõ: m t t p i t ng cho tr c có i t ng tho mãn nh ng i u ki n nh t nh Bài tốn ó g i tốn m c u hình t h p Trong l p tốn m, có nh ng tốn yêu c u ch rõ nh ng c u hình tìm c tho mãn i u ki n ã cho nh ng c u hình Bài tốn yêu c u a danh sách c u hình có th có g i tốn li t kê t h p gi i toán li t kê, c n ph i xác nh c m t thu t tốn có th theo ó l n l t xây d ng c t t c c u hình ang quan tâm Có nhi u ph ng pháp li t kê, nh ng chúng c n ph i áp ng c hai yêu c u d i ây: • Khơng c l p l i m t c u hình • Khơng c b sót m t c u hình Có th nói r ng, ph ng pháp li t kê ph ng k cu i gi i c m t s toán t h p hi n Khó kh n c a ph ng pháp s bùng n t h p xây d ng t c u hình (con s khơng ph i l n i v i toán t h p - Ví d li t kê cách x p n≥13 ng i quanh m t bàn tròn) gi thi t r ng m i thao tác xây d ng m t kho ng giây, ta ph i m t quãng 31 n m m i gi i xong Tuy nhiên v i s phát tri n c a máy tính i n t , b ng ph ng pháp li t kê, nhi u toán t h p ã tìm th y l i gi i Qua ó, ta c ng nên bi t r ng ch nên dùng ph ng pháp li t kê khơng cịn m t ph ng pháp khác tìm l i gi i Chính nh ng n l c gi i quy t toán th c t không dùng ph ng pháp li t kê ã thúc y s phát tri n c a nhi u ngành toán h c Cu i cùng, nh ng tên g i sau ây, v ngh a không ph i ng nh t, nh ng m t s tr ng h p ng i ta có th dùng l n ngh a c a c ó là: • Ph ng pháp li t kê • Ph ng pháp vét c n t p ph ng án • Ph ng pháp t tồn b Lê Minh Hồng { 3z Bài tốn li t kê §1 NH C L I M T S KI N TH C IS T H P Cho S m t t p h u h n g m n ph n t k m t s t nhiên G i X t p s nguyên d ng t n k: X = {1, 2, , k} I CH NH H P L P M i ánh x f: X → S Cho t ng ng v i m i i ∈ X, m t ch m t ph n t f(i) ∈ S c g i m t ch nh h p l p ch p k c a S Nh ng X t p h u h n (k ph n t ) nên ánh x f có th xác nh qua b ng giá tr f(1), f(2), , f(k) Ví d : S = {A, B, C, D, E, F}; k = M t ánh x f có th cho nh sau: i f(i) E C E Nên ng i ta ng nh t f v i dãy giá tr (f(1), f(2), , f(k)) coi dãy giá tr c ng m t ch nh h p l p ch p k c a S Nh ví d (E, C, E) m t ch nh h p l p ch p c a S D dàng ch ng minh c k t qu sau b ng quy n p ho c b ng ph ng pháp ánh giá kh n ng l a ch n: S ch nh h p l p ch p k c a t p g m n ph n t : k An = nk II CH NH H P KHÔNG L P Khi f n ánh có ngh a v i ∀i, j ∈ X ta có f(i) = f(j) ⇔ i = j Nói m t cách d hi u, dãy giá tr f(1), f(2), , f(k) g m ph n t thu c S khác ôi m t f c g i m t ch nh h p không l p ch p k c a S Ví d m t ch nh h p không l p (C, A, E): i f(i) C A E S ch nh h p không l p ch p k c a t p g m n ph n t : n! A k = n (n − 1)(n − 2) (n − k + 1) = n (n − k )! III HOÁN V Khi k = n M t ch nh h p không l p ch p n c a S c g i m t hoán v ph n t c a S Ví d : m t hoán v : (A, D, C, E, B, F) c a S = {A, B, C, D, E, F} i f(i) A D C E B F ý r ng k = n s ph n t c a t p X = {1, 2, , n} úng b ng s ph n t c a S Do tính ch t m t khác nên dãy f(1), f(2), , f(n) s li t kê c h t ph n t S Nh v y f toàn ánh M t khác gi thi t f ch nh h p không l p nên f n ánh Ta có t ng ng 1-1 gi a ph n t c a X S, ó f song ánh V y nên ta có th nh ngh a m t hoán v c a S m t song ánh gi a {1, 2, , n} S S hoán v c a t p g m n ph n t = s ch nh h p không l p ch p n: Pn = n! IV T H P M t t p g m k ph n t c a S Lê Minh Hoàng c g i m t t h p ch p k c a S { 4z Bài toán li t kê L y m t t p k ph n t c a S, xét t t c k! hoán v c a t p D th y r ng hoán v ó ch nh h p không l p ch p k c a S Ví d l y t p {A, B, C} t p c a t p S ví d thì: (A, B, C), (C, A, B), (B, C, A), ch nh h p không l p ch p c a S i u ó t c li t kê t t c ch nh h p khơng l p ch p k m i t h p ch p k s c tính k! l n V y: S t h p ch p k c a t p g m n ph n t : Ak n! C = n = k! k!(n − k )! k n S t p c a t p n ph n t : C + C1 + + C n = (1 + 1) n = n n n n Lê Minh Hồng { 5z Bài tốn li t kê §2 PH NG PHÁP SINH (GENERATE) Ph ng pháp sinh có th áp d ng gi i toán li t kê t h p t n u nh hai i u ki n sau tho mãn: Có th xác nh c m t th t t p c u hình t h p c n li t kê T ó có th xác nh c c u hình u tiên c u hình cu i th t ã xác nh Xây d ng c thu t tốn t c u hình ch a ph i c u hình cu i, sinh c c u hình k ti p Ph ng pháp sinh có th mơ t nh sau: ; repeat < a c u hình ang có>; ; Th t t i n Trên ki u d li u n gi n chu n, ng i ta th ng nói t i khái ni m th t Ví d ki u s có quan h : < 2; < 3; < 10; , ki u ký t Char c ng có quan h 'A' < 'B'; 'C' < 'c' Xét quan h th t toàn ph n "nh h n ho c b ng" ký hi u "≤" m t t p h p S, quan h hai ngơi tho mãn b n tính ch t: V i ∀a, b, c ∈ S • Tính ph bi n: Ho c a ≤ b, ho c b ≤ a; • Tính ph n x : a ≤ a • Tính ph n i x ng: N u a ≤ b b ≤ a b t bu c a = b • Tính b c c u: N u có a ≤ b b ≤ c a ≤ c Trong tr ng h p a ≤ b a ≠ b, ta dùng ký hi u "

Ngày đăng: 17/10/2014, 07:14

Từ khóa liên quan

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

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

Tài liệu liên quan