Tìm hiểu thuật toán tổng quát trong lập trình phần 3

Ví dụ thuật toán find_max Áp dụng cho kiểu mảng thô template T* find_max(T* first, T* last) { T* pMax = first; while (first != last) { if (*first *pMax) pMax = first; ++first; } return pMax; } | Ví dụ thuật toán find_max Áp dụng cho kiểu mảng thô template typename T T find_max T first T last T pMax first while first last if first pMax pMax first first return pMax Áp dụng cho kiểu Vector template typename T T find_max const Vector T v int iMax 0 for int i 0 i i if v i v iMax iMax i return v iMax Chương 10 Thuật toán tổng quát Áp dụng cho kiểu List đã làm quen template typename T ListItem T find_max List T l ListItem T pItem ListItem T pMaxItem pItem while pItem 0 if pItem- data pMaxItem- data pMaxItem pItem pItem pItem- getNext return pMaxItem o Cần tổng quát hóa phương pháp truy lặp phần tử Chương 10 Thuật toán tổng quát Bộ truy lặp iterator Mục đích Tạo một cơ chế thống nhất cho việc truy lặp phần tử cho các cấu trúc dữ liệu mà không cần biết chi tiết thực thi bên trong từng cấu trúc Ý tưởng Mỗi cấu trúc dữ liệu cung cấp một kiểu bộ truy lặp riêng có đặc tính tương tự như một con trỏ trong trường họp đặc biệt có thể là một con trỏ thực Tổng quát hóa thuật toán copy template class Iteratorl class Iterator2 void copy Iterator1 s Iterator2 d int n while n-- d s s d Các phép toán áp dụng đưọc tương tự con trỏ Chương 10 Thuật toán tổng .

Không thể tạo bản xem trước, hãy bấm tải xuống
TÀI LIỆU MỚI ĐĂNG
29    92    2    17-05-2024
2    74    1    17-05-2024
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.