Bài giảng lập trình c chương 5 nguyễn minh thành

11 182 0
Bài giảng lập trình c  chương 5   nguyễn minh thành

Đ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

Thiết kế giải thuật Nguyễn Minh Thành Thanhnm.itc@edu.vn Vấn đề Nền tảng lập trình thiết kế giải thuật Trong việc thiết kế cấu trúc logic chương trình, điều quan trọng dùng giải thuật cho thích hợp Vì chọn giải thuật để sử dụng tiêu chuẩn quan trọng cho thích hợp với chương trình Việc sử dụng giải thuật hiệu dễ hiểu giúp gia tăng tốc độ thực giảm lỗi tiềm ẩn Do giải thuật nhân tố yếu định hiệu suất hệ thống Các loại giải thuật • • • • • • • • Tìm kiếm Sắp xếp Đệ quy Xữ lý chuỗi ký tự Xữ lý file Đồ họa Đồ thị V v… Các phương pháp xây dựng giải thuật Giải thuật tập quy tắc định nghĩa rõ ràng áp dụng để giải vấn đề • Giải thuật cấu trúc liệu có mối quan hệ chặt chẽ với Cấu trúc liệu xác định khung cho giải thuật với độ tin cậy chắn • Khi giải tốn máy tính ta phải trọng đến hai vấn đề Cấu trúc liệu giải thuật Giải thuật phản ánh phép xữ lý, đối tượng xữ lý giải thuật lại liệu, với cấu trúc liệu chọn, có giải thuật tương ứng, cấu trúc liệu thay đổi thường giải thuật thay đổi theo • Ví dụ  Ví dụ: Trong việc xữ lý cấu trúc mảng, liệu tìm kiếm cập nhật dễ dàng, phải thời gian để chèn hay xố liệu Bởi liệu mảng tổ chức liên tiếp nhau, thao tác chèn hay xố liệu tương đối phức tạp việc dịch chuyển liệu liên quan sau phía trước Ví dụ  Bằng cách dùng cấu trúc kiểu danh sách, việc chèn xoá liệu dễ dàng hơn, liệu khơng cần phải dịch chuyển mà cần thay đổi trỏ Biểu Diễn Giải Thuật Có phương pháp biểu diễn giải thuật: • Pseudocode (mã giả) • Flowchart (lưu đồ) Khi thiết kế giải thuật phải mô tả rõ: • Đầu vào • Đầu (kết quả) • Mô tả giải thuật Các từ khóa Pseudocode IF THEN …ENDIF  IF THEN ELSE ENDIF  DO WHILE … ENDDO  DO … UNTIL …  Ví dụ Read schedule file for tables to be loaded IF any tables to be loaded THEN Call XYZ to load tables ENDIF IF (value > low-value) AND (value < high-value) THEN Update table ELSE Display error message 123 on screen ENDIF DO Get field value Determine screen-field-number CASE screen-field-number OF 1: Perform edits for field-1 2: Perform edits for field-2 3: Perform edits for field-3 OTHERWISE Display error message 112 ENDCASE UNTIL no error in field values Các ký hiệu Flowchart Bắt đầu/ kết thúc Xuất/ in Rẽ nhánh Điều kiện Luồng xử lý Khối xử lý Nhập 10 Giá trị trả Điểm nối  11 Ví dụ: Giải biện luận: ax+b=0 ... tảng lập trình thiết kế giải thuật Trong vi? ?c thiết kế c? ??u tr? ?c logic chương trình, điều quan trọng dùng giải thuật cho thích hợp Vì chọn giải thuật để sử dụng tiêu chuẩn quan trọng cho thích hợp... gian để chèn hay xố liệu Bởi liệu mảng tổ ch? ?c liên tiếp nhau, thao t? ?c chèn hay xố liệu tương đối ph? ?c tạp vi? ?c dịch chuyển liệu liên quan sau phía trư? ?c Ví dụ  Bằng c? ?ch dùng c? ??u tr? ?c kiểu... lại liệu, với c? ??u tr? ?c liệu chọn, c? ? giải thuật tương ứng, c? ??u tr? ?c liệu thay đổi thường giải thuật thay đổi theo • Ví dụ  Ví dụ: Trong vi? ?c xữ lý c? ??u tr? ?c mảng, liệu tìm kiếm c? ??p nhật dễ dàng,

Ngày đăng: 03/12/2015, 18:25

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