1. Trang chủ
  2. » Giáo Dục - Đào Tạo

chương 3 bài toán liệt kê

140 501 1

Đ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

Thông tin cơ bản

Định dạng
Số trang 140
Dung lượng 1,82 MB

Nội dung

Chng BI TON LIT Kấ Toỏn ri rc NI DUNG 1.Gii thiu bi toỏn 2.Thut toỏn v phc 3.Phng phỏp sinh 4.Thut toỏn quay lui Toỏn ri rc Giới thiệu toán Bi toỏn a danh sỏch tt c cu hỡnh t hp tho mt s tớnh cht cho trc c gi l bi toỏn lit kờ t hp Do s lng cu hỡnh t hp cn lit kờ thng l rt ln c kớch thc cu hỡnh cha ln: S hoỏn v ca n phn t l n! S m phn t ca n phn t l n!/(m!(n-m)! Do ú n cú quan nim th no l gii bi toỏn lit kờ t hp Giới thiệu toán Bi toỏn lit kờ t hp l gii c nu nh ta cú th xỏc nh mt thut toỏn theo ú cú th ln lt xõy dng c tt c cỏc cu hỡnh cn quan tõm Mt thut toỏn lit kờ phi m bo yờu cu c bn: Khụng c lp li mt cu hỡnh, khụng c b sút mt cu hỡnh Chng Bi toỏn lit kờ 1.Gii thiu bi toỏn 2.Thut toỏn v phc 3.Phng phỏp sinh 4.Thut toỏn quay lui Toỏn ri rc Khỏi nim bi toỏn tớnh toỏn nh ngha Bi toỏn tớnh toỏn F l ỏnh x t cỏc xõu nh phõn di hu hn vo cỏc xõu nh phõn di hu hn: F : {0, 1}* {0, 1}* Vớ d: Mi s nguyờn x u cú th biu din di dng xõu nh phõn l cỏch vit h m nh phõn ca nú H phng trỡnh tuyn tớnh Ax = b cú th biu din di dng xõu l ghộp ni ca cỏc xõu biu din nh phõn ca cỏc thnh phn ca ma trn A v vect b a thc mt bin: P(x) = a0 + a1 x + + an xn, hon ton xỏc nh bi dóy s n, a0, a1, , an, m biu din dóy s ny chỳng ta cú th s dng xõu nh phõn Khỏi nim thut toỏn nh ngha Ta hiu thut toỏn gii bi toỏn t l mt th tc xỏc nh bao gm mt dóy hu hn cỏc bc cn thc hin thu c u cho mt u vo cho trc ca bi toỏn Thut toỏn cú cỏc c trng sau õy: u vo (Input): Thut toỏn nhn d liu vo t mt no ú u (Output): Vi mi cỏc d liu u vo, thut toỏn a cỏc d liu tng ng vi li gii ca bi toỏn Chớnh xỏc (Precision): Cỏc bc ca thut toỏn c mụ t chớnh xỏc Khỏi nim thut toỏn Hu hn (Finiteness): Thut toỏn cn phi a c u sau mt s hu hn (cú th rt ln) bc vi mi u vo n tr (Uniqueness): Cỏc kt qu trung gian ca tng bc thc hin thut toỏn c xỏc nh mt cỏch n tr v ch ph thuc vo u vo v cỏc kt qu ca cỏc bc trc Tng quỏt (Generality): Thut toỏn cú th ỏp dng gii mi bi toỏn cú dng ó cho phc ca thut toỏn phc tớnh toỏn ca thut toỏn c xỏc nh nh l lng ti nguyờn cỏc loi m thut toỏn ũi hi s dng Cú hai loi ti nguyờn quan trng ú l thi gian v b nh Vic tớnh chớnh xỏc c cỏc loi ti nguyờn m thut toỏn ũi hi l rt khú Vỡ th ta quan tõm n vic a cỏc ỏnh giỏ sỏt thc cho cỏc i lng ny Trong giỏo trỡnh ny ta c bit quan tõm n ỏnh giỏ thi gian cn thit thc hin thut toỏn m ta s gi l thi gian tớnh ca thut toỏn phc ca thut toỏn Rừ rng: Thi gian tớnh ph thuc vo d liu vo Vớ d: Vic nhõn hai s nguyờn cú ch s ũi hi thi gian khỏc hn so vi vic nhõn hai s nguyờn cú 3*109 ch s! nh ngha Ta gi kớch thc d liu u vo (hay di d liu vo) l s bớt cn thit biu din nú Vớ d: Nu x, y l u vo cho bi toỏn nhõn s nguyờn, thỡ kớch thc d liu vo ca bi toỏn l n = log |x| + log |y| Ta s tỡm cỏch ỏnh giỏ thi gian tớnh ca thut toỏn bi mt hm ca di d liu vo 10 Thut toỏn lm vic nh th no Th xp hu dũng vo ct ROW 2, COL ROW 1, COL ó t 126 Thut toỏn lm vic nh th no Xp c hu dũng ta tip tc xp hu dũng 4: Th ct ROW 2, COL ROW 1, COL ó t 127 Thut toỏn lm vic nh th no Th xp c hu dũng vo ct ROW 2, COL ROW 1, COL ó t 128 Thut toỏn lm vic nh th no Th xp c hu dũng vo ct ROW 2, COL ROW 1, COL ó t 129 Thut toỏn lm vic nh th no Th xp c hu dũng vo ct ROW 2, COL ROW 1, COL ó t 130 Thut toỏn lm vic nh th no Khụng xp c hu dũng ROW 2, COL ROW 1, COL ó t 131 Thut toỏn lm vic nh th no Quay li tỡm v trớ mi cho hu dũng 3: Th ct ROW 2, COL ROW 1, COL ó t 132 Thut toỏn lm vic nh th no Quay li tỡm v trớ mi cho hu dũng 3: Th ct ROW 2, COL ROW 1, COL ó t 133 Thut toỏn lm vic nh th no Khụng cú cỏch xp mi cho hu dũng ROW 2, COL ROW 1, COL ó t 134 Thut toỏn lm vic nh th no Quay li tỡm cỏch xp mi cho hu dũng 2: Khụng cú ROW 2, COL ROW 1, COL ó t 135 Thut toỏn lm vic nh th no Quay li tỡm cỏch xp mi cho hu dũng 1: Chuyn sang ct ROW 2, COL ROW 1, COL ó t 136 Một lời giải toán xếp hậu n = 137 The End Toỏn ri rc - NN 138 138 Questions? 139 139 Toỏn ri rc 140 [...]... tính trung bình của thuật toán là Θ (n) Toán rời rạc 31 Chương 3 Bài toán liệt kê 1.Giới thiệu bài toán 2.Thuật toán và độ phức tạp 3. Phương pháp sinh 4.Thuật toán quay lui Toán rời rạc 32 3 PHƯƠNG PHÁP SINH 3. 1 Sơ đồ thuật toán 3. 2 Sinh các cấu hình tổ hợp cơ bản • Sinh xâu nhị phân độ dài n • Sinh tập con m phần tử của tập n phần tử • Sinh hoán vị của n phần tử 33 SƠ ĐỒ THUẬT TOÁN  Phương pháp sinh... bất đẳng thức trong định nghĩa công thức tiệm cận 23 Ký hiệu tiệm cận trong các đẳng thức  Được sử dụng để thay thế các biểu thức chứa các toán hạng với tốc độ tăng chậm  Ví dụ, 4n3 + 3n2 + 2n + 1 = 4n3 + 3n2 + Θ(n) = 4n3 + Θ(n2) = Θ(n3)  Trong các đẳng thức, Θ (f(n)) thay thế cho một hàm nào đó g(n) ∈ Θ (f(n)) • Trong ví dụ trên, Θ(n ) thay thế cho 3n 2 2 + 2n + 1 24 So sánh các hàm số f↔ g ≈ a↔ b... giải bài toán liệt kê tổ hợp đặt ra nếu như hai điều kiện sau được thực hiện: 1) Có thể xác định được một thứ tự trên tập các 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 và cấu hình cuối cùng trong thứ tự đã xác định 2) Xây dựng được thuật toán từ cấu hình chưa phải là cuối cùng đang có, đưa ra cấu hình kế tiếp nó  Thuật toán nói đến trong điều kiện 2) được gọi là Thuật toán. .. phương n3 bậc 3 2n hàm mũ nk (k là hằng số dương) đa thức 28 Ví dụ phân tích thuật toán Ví dụ Xét thuật toán tìm kiếm tuần tự để giải bài toán Đầu vào: n và dãy sốs1, s2, , sn Đầu ra: Vị trí phần tử có giá trị key hoặc là n+1 nếu không tìm thấy function Linear_Search(s,n,key); begin i:=0; repeat i:=i+1; until (i>n) or (key = s i); Linear_Search := i; end; Toán rời rạc 29 Ví dụ phân tích thuật toán. ..Phép toán cơ bản  Đo thời gian tính bằng đơn vị đo nào?  Định nghĩa Ta gọi phép toán cơ bản là phép toán có thể thực hiện với thời gian bị chặn bởi một hằng số không phụ thuộc vào kích thước dữ liệu  Để tính toán thời gian tính của thuật toán ta sẽ đếm số phép toán cơ bản mà nó phải thực hiện 11 Các loại thời gian tính  Chúng ta sẽ quan tâm đến: • Thời gian tối thiểu cần thiết để thực hiện thuật toán. .. thuật toán với đầu vào kích thước n • Thời gian nhiều nhất cần thiết để thực hiện thuật toán với mọi bộ dữ liệu đầu vào kích thước n Thời gian như vậy sẽ được gọi là thời gian tính tồi nhất của thuật toán với đầu vào kích thước n • Thời gian trung bình cần thiết để thực hiện thuật toán trên tập hữu hạn các đầu vào kích thước n Thời gian như vậy sẽ được gọi là thời gian tính trung bình của thuật toán. .. thuật toán với độ dài đầu vào là n Rõ ràng thời gian tính của thuật toán có thể đánh giá bởi số lần thực hiện câu lệnh i:=i+1 trong vòng lặp repeat  Nếu s1 = key thì câu lệnh i:=i+1 trong thân vòng lặp repeat thực hiện 1 lần Do đó thời gian tính tốt nhất của thuật toán là Θ (1)  Nếu key không có mặt trong dãy đã cho, thì câu lệnh i:= i+1 thực hiện n lần Vì thế thời gian tính tồi nhất của thuật toán. .. thuật toán là Θ (1)  Nếu key không có mặt trong dãy đã cho, thì câu lệnh i:= i+1 thực hiện n lần Vì thế thời gian tính tồi nhất của thuật toán là O(n) Toán rời rạc 30 Ví dụ phân tích thuật toán     Cuối cùng, ta tính thời gian tính trung bình của thuật toán • Nếu key tìm thấy ở vị trí thứ i của dãy (key = si) thì câu lệnh i := i+1 phải thực hiện i lần (i = 1, 2, , n), • Nếu key không có mặt trong dãy... nói đến trong điều kiện 2) được gọi là Thuật toán Sinh kế tiếp 34 Thuật toán sinh procedure Generate; Begin ; Stop:=false; while not stop do begin ; if (cấu hình đang có chưa là cuối cùng) then ... ngha cụng thc tim cn 23 Ký hiu tim cn cỏc ng thc c s dng thay th cỏc biu thc cha cỏc toỏn hng vi tc tng chm Vớ d, 4n3 + 3n2 + 2n + = 4n3 + 3n2 + (n) = 4n3 + (n2) = (n3) Trong cỏc ng thc,... toỏn l (n) Toỏn ri rc 31 Chng Bi toỏn lit kờ 1.Gii thiu bi toỏn 2.Thut toỏn v phc 3. Phng phỏp sinh 4.Thut toỏn quay lui Toỏn ri rc 32 PHNG PHP SINH 3. 1 S thut toỏn 3. 2 Sinh cỏc cu hỡnh t hp... Sinh k tip 36 PHNG PHP SINH 3. 1 S thut toỏn 3. 2 Sinh cỏc cu hỡnh t hp c bn Sinh xõu nh phõn di n Sinh m phn t ca n phn t Sinh hoỏn v ca n phn t 37 Sinh cỏc dóy nh phõn di n 38 Sinh cỏc

Ngày đăng: 10/11/2015, 10:14

TỪ KHÓA LIÊN QUAN

w