SKKN vận dụng thuật toán sắp xếp, tìm kiếm vào việc bồi dưỡng học sinh giỏi, thi chuyên phan trên ngôn ngữ lập trình c++

42 66 0
SKKN vận dụng thuật toán sắp xếp, tìm kiếm vào việc bồi dưỡng học sinh giỏi, thi chuyên phan trên ngôn ngữ lập trình c++

Đ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

SỞ GIÁO DỤC VÀ ĐÀO TẠO TỈNH NGHỆ AN TRƯỜNG THPT CON CNG Tên đề tài: VẬN DỤNG THUẬT TỐN SẮP XẾP, TÌM KIẾM VÀO VIỆC BỒI DƯỠNG HỌC SINH GIỎI, THI CHUN PHAN TRÊN NGƠN NGỮ LẬP TRÌNH C++ Người thực hiện: Đặng Văn Hảo Đơn vị: Trường THPT Con Cuông Con Cuông – Năm 2021 PHỤ LỤC Trang PHẦN I: ĐẶT VẤN ĐỀ I LÝ DO CHỌN ĐỀ TÀI II ĐỐI TƯỢNG NGHIÊN CỨU III MỤC ĐÍCH NGHIÊN CỨU, ĐÓNG GÓP MỚI CỦA ĐỀ TÀI IV PHƯƠNG PHÁP NGHIÊN CỨU .4 V CẤU TRÚC CỦA CHUYÊN ĐỀ PHẦN II NỘI DUNG NGHIÊN CỨU CHƯƠNG I CƠ SỞ LÍ LUẬN 1.1.1 Sắp xếp chọn (Selection sort) 1.1.2 Sắp xếp chèn (Insertion sort) 1.1.3 Sắp xếp bọt (Bubble sort) 1.1.4 Sắp xếp theo phân đoạn (Quick Sort) 10 1.1.5 Sắp xếp trộn (Merge sort) 12 1.1.6 Sắp xếp vun đống (Heap sort) .14 1.2 Thuật tốn tìm kiếm 17 1.2.1 Tìm kiếm tuyến tính .18 1.2.2 Tìm Kiếm nhị phân 19 CHƯƠNG II: CƠ SỞ THỰC TIỄN 21 2.1 Thực trạng học sinh giáo viên trước chưa áp dụng đề tài 21 2.2 Cách sử dụng thư viện có sẵn C++ .22 2.3 Bài tập ứng dụng 23 2.3 Bài tập có lời giải 23 Bài Dựng cọc 23 Bài Xếp việc 24 Bài Đua ngựa 27 Bài Đoạn gối 29 Bài Băng nhạc 31 Bài Lo cò 33 2.3.2 Bài tập tự giải 35 Bài Bước nhảy xa 35 Bài Khoảng Cách 36 Bài Bài tốn túi ( với số lượng vật khơng hạn chế) 36 Bài Đoạn bao 37 Bài Phủ đoạn 37 Bài Số nguyên nhỏ 38 Bài Cỏ Dại 38 Bài Dãy số .39 Bài Đoạn rời 40 2.4 Kết sau áp dụng đề tài 40 PHẦN III KẾT LUẬN 41 Với mục tiêu đề đề tài làm .41 Hướng phát triển đề tài 41 Kiến nghị đề xuất .41 TÀI LIỆU THAM KHẢO 42 PHẦN I: ĐẶT VẤN ĐỀ I LÝ DO CHỌN ĐỀ TÀI Trong sống có nhiều cơng việc thực hiện, quan trọng công việc xếp thực vào thời gian hợp lý quy trình thực quan trọng Với việc giải toán tin học vậy, phải biết lựa chọn cho thuật tốn hiệu để giải toán Ở phương diện lập trình lập trình hiệu thời gian chạy nhanh dung lượng nhớ sử dụng độ phức tạp thuật tốn bé Đối với số tốn nhìn trơng khó, phức tạp Nhưng để ý quan sát, cần dùng thuật tốn xếp, tìm kiếm để chuyển toán sang một hướng từ giải tốn cách đơn giản nhiều Mặt khác tin học xếp lại có nhiều phương pháp, đơi chọn cho phương pháp dễ nhớ, dễ hiểu mà không để ý đến thời gian dung lượng chương trình Nếu học sinh lớp thường điều học sinh giỏi giáo viên bồi dưỡng học sinh giỏi phải có suy nghĩ khác Để giúp cho em hiểu thêm nắm rõ phương pháp xếp tìm kiếm Tơi tìm hiểu đề tài “Vận dụng thuật tốn xếp, tìm kiếm vào việc bồi dưỡng học sinh giỏi, thi chun phan ngơn ngữ lập trình C+ +” Với đề tài em biết lựa chọn cho phương pháp xếp, tìm kiếm hợp lý việc giải tốn Từ nâng cao kĩ xử lí gặp tốn mà vận dụng thuật tốn xếp, tìm kiếm cách hiệu nhất, độ phức tạp nhỏ nhanh II ĐỐI TƯỢNG NGHIÊN CỨU - Đối tượng nghiên cứu học sinh ôn thi học sinh giỏi, thi vào chuyên tin trường Phan, giáo viên giảng dạy mơn Tin trường THPT - Các thuật tốn xếp, tìm kiếm ứng dụng vào tốn III MỤC ĐÍCH NGHIÊN CỨU, ĐĨNG GĨP MỚI CỦA ĐỀ TÀI Trên sở nghiên cứu, thuật toán xếp, tìm kiếm cịn đưa ứng dụng việc giải lớn máy tính Nhằm giúp học sinh, giáo viên có nhìn tổng quát phần tầm quan trọng thuật tốn xếp, tìm kiếm trình bày tốn thường gặp, cách giải, cài đặt chương trình NNLT C Từ nâng cao kĩ xử lí tốn khó, phức tạp có liên quan đến thuật tốn xếp tìm kiếm Đồng thời hướng dẫn sử dụng số hàm có sẵn C++ IV PHƯƠNG PHÁP NGHIÊN CỨU Để hoàn thành nhiệm vụ đề tài, nghiên cứu nhiều sách chuyên đề Tin học dành cho viêc bồi dưỡng học sinh giỏi tin, vấn đề cấu trúc liệu, thuật tốn cài đặt chương trình Lựa chọn số toán giải áp dụng thuật toán xếp chương trình tin học chuyên THPT V CẤU TRÚC CỦA CHUYÊN ĐỀ Ngoài phần đặt vấn đề phần kết luận nội dung đề tài gồm chương: Cơ sở lý luận Trình bày đầy đủ thuật tốn xếp, tìm kiếm với quy trình phương pháp chương trình cụ thể để bạn đọc dễ hiểu Qua vận dụng để giải toán sau Cơ sở thực tiễn Nêu thực trạng vấn đề học sinh giáo viên việc giải tốn lớn, tốn ơn thi học sinh giỏi Qua giải vấn đề cách liệt kê đưa tốn điển hình có sử dụng thuật tốn xếp, tìm kiếm để vận dụng lập trình giải toán đề thi hay ôn luyện Trang bị kiến thức cho học sinh giáo viên để giải tốt gặp tốn có liên quan đến phương pháp xếp, tìm kiếm cách hiệu PHẦN II NỘI DUNG NGHIÊN CỨU CHƯƠNG I CƠ SỞ LÍ LUẬN 1.1 Thuật tốn xếp Sắp xếp q trình xử lý danh sách phần tử (hoặc mẫu tin) để đặt chúng theo thứ tự thỏa mãn tiêu chuẩn dựa nội dung thơng tin lưu giữ phần tử Hay đơn giản ta hiểu xếp q trình tổ chức lại dãy liệu theo trật tự định Tại cần phải xếp phần tử thay để dạng tự nhiên (chưa có thứ tự) vốn có ? Mục đích việc xếp nhằm giúp cho việc tìm kiếm liệu cách dễ dàng nhanh chóng Sắp xếp việc làm dùng rộng rãi kĩ thuật lập trình nhằm xử lý liệu Các thuật tốn xếp phân chia thành hai nhóm là: - Sắp xếp đơn giản * Sắp xếp chọn (Selection sort) * Sắp xếp chèn (Insertion sort) * Sắp xếp bọt (Bubble sort) -Sắp xếp với độ phức tạp O(nlog(n)) * Sắp xếp theo phân đoạn (Quick Sort) * Sắp xếp hòa nhập (merge sort) * Sắp xếp vun đống (Heap sort) Sau tìm hiểu thuật toán 1.1.1 Sắp xếp chọn (Selection sort) Ý tưởng: Chọn phần tử nhỏ n phần tử ban đầu, đưa phần tử vị trí dãy hành Sau khơng quan tâm đến nữa, xem dãy hành n-1 phần tử dãy ban đầu, vị trí thứ Lặp lại trình cho dãy hành đến dãy hành cịn phần tử Dãy ban đầu có n phần tử, tóm tắt ý tưởng thuật tốn thực n-1 lượt việc đưa phần tử nhỏ dãy hành vị trí đầu dãy Ví dụ cho dãy số đơn giản với phần tử cần xếp cho tăng dần Ban đầu 89 10 41 i=1 89 10 41 i=2 89 10 41 i=3 89 10 41 i=4 89 10 41 i=5 89 10 41 i=6 10 89 41 10 41 89 i=7 dãy xếp Những ô tô gạch chân ô đổi chổ bước i Thuật tốn sau: • Đầu vào: mảng a[i] (1

Ngày đăng: 25/05/2021, 12:21

Từ khóa liên quan

Mục lục

  • PHỤ LỤC Trang

  • PHẦN I: ĐẶT VẤN ĐỀ

    • I. LÝ DO CHỌN ĐỀ TÀI

    • II. ĐỐI TƯỢNG NGHIÊN CỨU

    • III. MỤC ĐÍCH NGHIÊN CỨU, ĐÓNG GÓP MỚI CỦA ĐỀ TÀI

    • IV. PHƯƠNG PHÁP NGHIÊN CỨU

    • V. CẤU TRÚC CỦA CHUYÊN ĐỀ

    • PHẦN II. NỘI DUNG NGHIÊN CỨU

    • CHƯƠNG I. CƠ SỞ LÍ LUẬN

      • 1.1.1. Sắp xếp chọn (Selection sort).

      • 1.1.2. Sắp xếp chèn (Insertion sort).

      • 1.1.3. Sắp xếp nổi bọt (Bubble sort).

      • 1.1.4. Sắp xếp theo phân đoạn (Quick Sort).

      • 1.1.5. Sắp xếp trộn (Merge sort).

      • 1.1.6. Sắp xếp vun đống (Heap sort).

      • 1.2. Thuật toán tìm kiếm

      • 1.2.1. Tìm kiếm tuyến tính

      • 1.2.2. Tìm Kiếm nhị phân

      • CHƯƠNG II: CƠ SỞ THỰC TIỄN

        • 2.1. Thực trạng của học sinh và giáo viên trước khi chưa áp dụng đề tài

        • 2.2. Cách sử dụng thư viện có sẵn trong C++

        • 2.3. Bài tập ứng dụng

        • 2.3. 1. Bài tập có lời giải

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

Tài liệu liên quan