1. Trang chủ
  2. » Tất cả

bai-giang-phan-tich-thiet-ke-va-danh-gia-thuat-toan

74 3 0

Đ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 74
Dung lượng 1,2 MB

Nội dung

BỘ GIAO THÔNG VẬN TẢI TRƯỜNG ĐẠI HỌC HÀNG HẢI N H HỌC T NH H C NG NGHỆ TH NG TIN ÀI GIẢNG PHÂN T CH THIẾT Ế VÀ Đ NH GI THUẬT T N TÊN HỌC PHẦN : Phân tích thiết kế đánh giá thuật tốn MÃ HỌC PHẦN : 17208 TRÌNH ĐỘ ĐÀO TẠO : ĐẠI HỌC CH NH QU DÙNG CHO SV NGÀNH : C NG NGHỆ TH NG TIN HẢI PHÒNG - 2010 Tên học phần P ộ môn phụ trách giảng dạy K a ọ M y ã học phần 17208 TS 60 Lý 45 y Tự 15 /Xem a Điều kiện tiên S ê p ả ọ x K lp C ục tiêu - Tự ọ B ọ p ầ sa mớ l T học phần C p C p Rè l y Nội dung chủ yếu Gồm p ầ : C C C lượ K Loại học phần hoa phụ trách CNTT Tổng số TC: p lớ ượ ă Đồ ý ọ p ầ ả mô ọ y: l lượ x y ự y a ọ ả ả x p lượ m : lượ am lam ộp p ộ ả m lượ l a lượ ay l BT KT Nội dung chi tiết học phần TÊN CHƯƠNG ỤC Ch ng I Các khái niệm c ản 1.1 G 1.1.1 K m 1.1 C p p p 1.1.3 C ụ s Độ p p .1 C ý m ộ p C lớp 1.3 Mố a a l 1.4 Mộ số ụ Ch ng II S p ếp t m kiếm B x p 1.1 Sắp x p Sắp x p 1.3 Đ x p C x p ả Sắp x p ọ Sele S Sắp x p ự p x a e S Sắp x p è I se S Sắp x p ọ B le S S s x p ả PHÂN PHỐI SỐ TIẾT TS LT TH/Xemina ố p 0,5 0,5 ả 15 0,5 2,5 1 i TÊN CHƯƠNG ỤC Sắp x p ố 3.1 C Heap T xy ự Heap 3.3 T x p ố T m m y 4.1 B m m T m m y Ch ng III Đệ qui chiến c v t cạn 3.1 K m quy 3.1.1 G ả y ủ ụ y 3.1 T ả y 3.1.3 H lự y 3.1.4 Đ y y p ọ C lượ B e e 3.3 C lượ ay l a a 3.3.1 Ve m 3.3 T ủ ụ 3.3.3 C 3.3.4 Đ p 3.3 Mộ số a a Ch ng IV Chiến c chia đ tr 4.1 C s lượ a T x p ộ .1 T ộ a R Sắp x p ộ 4.3 Sắp x p a s 4.3.1 C lượ p 4.3.2 Quick sort 4.4 T m m p T số yê .1 T ay T a Mộ số Ch ng V Qui hoạch động C lượ ộ 5.1.1 C p ụ C ướ ộ 1.3 C ộ B y số a T T ộ B y B ma Mộ số ụ Ch ng VI Chiến c tham am N yê ắ am lam B B l 3.1 T PHÂN PHỐI SỐ TIẾT TS LT TH/Xemina 2,5 1,5 11 11 12 1 0,5 1 0,5 0,5 1,5 BT KT 1 1 1 1,5 1 1 0,5 1,5 0,5 1,5 0,5 1 0,5 1 1 ii TÊN CHƯƠNG ỤC T e S s lượ ộ PHÂN PHỐI SỐ TIẾT TS LT TH/Xemina lượ am lam am lam lượ Nhiệm vụ sinh viên T am ự y am ự m a ỳ ố BT 0,5 ê ỳ ự ọ KT ự lm p giáo viên giao, Tài iệu học tập N y H Đ Giáo trình số vấn đề thuật tốn NXB G ụ 2003 Đ M Tư Cấu trúc liệu thuật toán NXB Đ ọ ố aH ộ 00 N y ố Lượ H Đ Hả Cấu trúc liệu + giải thuật = chương trình NXB G ụ 199 R a Neap l a Kumarss Naimipour, Foundations of Algorithms Using C++ Pseudocode, Third Edition, Jones and Bartlett Publishers, 2004 Thomas H Cormen, Charles E Leiserson, Ronald L Rivest, Clifford Stein, Introduction to Algorithms, Second Edition, MIT Press, 2001 H nh thức tiêu chuẩn đánh giá sinh viên H ố ỳ:T S ê p ả ảm ả Thang m Thang m chữ p e y N Bộ , , C, D, F Đi m đánh giá học phần Z = 0,3X + 0,7 B K a Cô ả y l Tơ Ngày phê duyệt Tr ởng l thức thống Bộ mô K a ọ M y ượ ù ả y cho sinh viên / /20 ộ môn ThS Nguyễn Hữu Tuân (ký ghi rõ họ tên) iii ài giảng mơn học Phân tích thiết kế đánh giá giải thuật ỤC LỤC LỜI NÓI ĐẦU CH NG I: C C KH I NI M C T ả - Algorithm a 1.1 Đ Đ B Mô ả S ướ ụ Độ p s ự lư p 3.1 C ả l ê a 3.3 C ự a 3.4 C a – Algorithm Complexity Đ ộp lớp p C l – Data structure C lượ D y ộ Đ C D lượ ea C e am lam G ee y 10 B x a s e sea ay l – Backtracking C a CH BẢN ộ Dy am P amm 11 p 11 NG II: S P X P SORTING VÀ TÌM KI M S ARCHING 13 B x p 13 1.1 Sắp x p I e al S Sắp x p x e al S 1.3 Sắp x p 1.3 C C Sắp x p ẩ Sắp x p mộ p p x p ọ Sắp x p Sắp x p 13 p 13 ê p 13 è Sele x p 14 ả 15 s 15 ự p x a es 17 I se s 19 ọ B le s 21 iv ài giảng mơn học Phân tích thiết kế đánh giá giải thuật S s x p C l T m CH CH CH CH m Heap x p y ả 23 ố Heap s 24 31 C 33 B p 33 NG III: Đ UI VÀ CHI N L K m C lượ C lượ C V T CẠN 34 34 B ay l NG IV: CHI N L C s Sắp x p ộ Sắp x p Tm B e Ba a / ya e 35 C CHIA Đ TR 38 lượ a Me e s a m e 34 D C e 38 38 s p ea 43 46 p 48 NG V: UI HOẠCH ĐỘNG 49 C lượ ộ B 1: D y B :B P B B 49 a 49 y p p ộ y ma 51 53 53 p 57 NG VI: CHI N L N yê ắ B Bài t S s C THAM LAM GR D ) 60 am lam 60 60 lpl 61 lượ am lam ộ 64 TÀI LI U THAM KHẢO 65 ĐỀ THI THAM KHẢO 66 v ài giảng môn học Phân tích thiết kế đánh giá giải thuật LỜI NÓI ĐẦU C l a l mộ ượ p ả s ụ l ả V p p lp ê lựa ọ mô ọ P T s s ưa a l l ự ê ắ l l a ọ my Hầ ù lớ ay ù ả ay p p ự lm ê lượ x y ự a ọ my ả lý y ắ ả p p ự V y ọ p ả l mộ a ọ l y ựa ê m ê m ả p ả y mô ọ C l ả a Cô Tô Đ ọ H ả V am ù am ả l p ả ướ ự y pe a Vớ ẩy ượ a ủ a m ả x p m m lượ ay l ộ am lam y ọ s p em s ê ộ ả mộ l M ù ố ắ ẫ ô mộ số s y ọ s ượ è p em ê ộ ả pý ô a l y X Cô a lượ l ự ê y ê my l e l Tô ảm p ỡ è l p Ba y ủ m a Hải phòng, tháng 04 năm 2010 Tác giả Nguyễn Hữu Tn ài giảng mơn học Phân tích thiết kế đánh giá giải thuật CHƯƠNG I C C H I NIỆ CƠ ẢN Thuật toán (giải thuật) - Algorithm 1.1 Đ nh ngh a thuật toán C a p Te ố s a Algorithms Se T mas H C me R es Cl Se ượ a ụ x ell- e e s a a mộ mộ p ượ ọ l N mộ ô p ầ ả ả mộ ụ ộ ố ell- e e a l mộ l mộ x y số a số a a l “Introduction to C a les Le se s R al L sa : “mộ l mộ ủ mộ p ọ l p p l V mộ mộ m m ụ T m ù l mộ mộ m Đ c tr ng thuật toán T ố ắ : T l ầ ộ ầ p ả Đ y ảm ả l mộ a ả ọ sa ự ố mộ T : T x p T ả ầ T y ầ p ả :C ướ ầm lẫ ố ả: a ù sa mộ số p ả a m l Input K ụ e ả ượ ụ y ả p p ê a ượ ướ ượ p ọ ượ xem l p : ượ mộ lớp N ảm ả s ọ l ự p ố a ọ l O tput l mộ ả ă ự ả y ượ yê p p ả ầ ả ụ ượ ọ l ùy e i u diễn thuật tốn T ng có hai cách bi u di n thu t toán, cách th nh t mơ tả thu t tốn, cách th hai s dụ s giải thu t 2.1 ô tả ước thực hi n ớc thực Đ bi u di n thu i ta mô tả x ước thực hi n thu t tốn, ngơn ng ù mơ tả thu t tốn có th ngơn ng tự nhiên ho c ngôn ng lai ghép gi a ngôn ng tự nhiên với ngôn ng l p ọ l n giả mã l nh ài giảng mơn học Phân tích thiết kế đánh giá giải thuật Ví dụ: mơ tả thu m ước số chung lớn nh t hai số nguyên Input: Hai số nguyên a, b O p : số lớ a Thuật toán: Bướ 1: N a Bướ a :N USCLN(a, b)=a m USCLN a-b b, quay l i ướ Bướ 3: N u a < b tìm USCLN a b-a, quay l i ướ 2 Sử dụng s đ ( u đ ) giải thuật (flowchart) Mộ (Algorithm Flowchart) S s y C ù ụ ý s mô ả ố Bắ l s ả ủa mộ s ầu ố ả mô ả ướ ụ s ả a s a ả C p s mộ mô ả ma ự mô ả ố Câu l nh K t ụ c Đ u ki n Đ S hối K ố Nh p xu t d li u ắ ầ y hối K ố mộ Khối T ự a Khối 4: R s e (False) mộ a l m a Đ T e l mộ u ki u th l ồm mộ B lea sa u th s e Sa ài giảng môn học Phân tích thiết kế đánh giá giải thuật hối C l p x l Độ phức tạp thuật tốn – Algorithm Complexity Các tiêu chí đánh giá thuật tốn Tơ dựa ê m ộ tốt, x u so sánh thu t tốn lo i, có th ẩ : +T ả + Dựa vào th i gian thực hi n tài nguyên mà thu t toán s dụ d li u thực hi n Trên thực t thu t tốn hi u khơng d hi t hi u ô d dàng thực hi n hi ược cách nhanh chóng Và mộ u ngh ch lý thu t tốn hi u khó hi t ph c t p l i hi u (không phả l V nh giá so sánh thu a ng dựa ê ộ ph c t p v th i gian thực hi n thu t toán, gọ l ộ ph c t p thu t toán (algorithm complexity) V ch ộ ph c t p thu t toán mộ m ướ lượng (có th khơng xác) số phép tính mà thu t tốn cần thực hi n (t dàng suy th i gian thực hi n thu ối với d li p ước N N có th số phần t mả ng hợp toán x p ho c tìm ki m, ho c có th l ộ lớn số toán ki m tra số nguyên tố chẳng h n 3.2 Đánh giá th i gian thực thuật toán Đ minh họa vi chọn (selection sort) x p Cài ộ ph c t p thu t tốn ta xem xét ví dụ v thu t toán x p i ch trực ti p ex a e s sa : t thu t toán x p chọn: for(i=0;i

Ngày đăng: 26/04/2021, 15:47

TÀI LIỆU CÙNG NGƯỜI DÙNG

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

TÀI LIỆU LIÊN QUAN