Chương 3: Giải thuật sắp xếp (SelectionSort,InsertSort..)

28 528 1
Chương 3: Giải thuật sắp xếp (SelectionSort,InsertSort..)

Đ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

Chương 3: SẮP XẾP GV Vũ Thị Thúy Vi Trường CĐCĐ Sóc Trăng 2008 Chương 3: 3: Sắp Sắp xếp xếp Chương NỘI DUNG 3.1 Bài toán xếp 3.2 Sắp xếp chọn 3.3 Sắp xếp xen 3.4 Sắp xếp bọt Là cácgiải giải thuật Các đơn giản thường thường lấy O(n ) thời dùng để 2sắp gian để sắpcóxếp danh sách n đối tượng đối tượng 3.5 Quicksort 3.6 Heapsort 3.7 Binsort 3.8 Tổng kết chương 3.1 Bài toán xếp Tầm quan trọng toán xếp     3.1 Bài toán xếp 3.1 Bài tốn xếp  Tổ chức liệu ngơn ngữ cài đặt 3.1 Bài toán xếp Sắp xếp Sắp xếp sắptổ xếp sử dụng xếp liệu lượng đối tượng cần xếp chức nhớ số máy tính, ta lớn có sử thể lưu trữ dụng khả truy nhớ nhập ngẫu mà phải lưu trữ nhớ nhiên nhớ vàtrên Cụ thể ta thực nhanh xếp liệu lưu trữ tập tin Xác định toán xếp INPUT: Số nguyên dương n dãy n số nguyên a1, a2, …, an (ai với i: 1n) OUTPUT: Dãy n số nguyên a1, a2, …, an xếp theo thứ tự tăng dần Các phương pháp xếp Giải thuật Ví dụ minh họa Tóm tắt giải thuật Chương trình Phân tích đánh giá 3.2 Sắp xếp chọn Giải thuật Ví dụ minh họa Sắp xếp dãy số nguyên A gồm số nguyên sau: B1 B2 chọn phần tử có khóa nhỏ phần tử a[1] 9đến a[6] 7và hoán vị với phần tử a[1] từ B3 phần có7khóa nhỏ phần tử tử5 chọn a[2] đến a[6] hoán vị với phần tử a[2] B4 từ chọn phần tử có khóa nhỏ phần tử 7và hốn vị với phần tử a[3] a[3] 59đến a[6] từ chọn phần tử có khóa nhỏ B5 chọn phần tử có khóa nhỏ phần tử phần tử từ a[5] đến a[6] a[4] 5đến 87 a[6] 98 7và hốn vị nóvàvới từ phần tử a[4] hốn vị với phần tử a[5] Tóm tắt giải thuật xếp chọn B1 Chọn phần tử có khóa nhỏ n phần tử từ a[1] đến a[n] hốn vị với phần tử a[1] B2 Chọn phần tử có khóa nhỏ n-1 phần tử từ a[2] đến a[n] hốn vị với phần tử a[2] … Bi Chọn phần tử có khóa nhỏ n-i+1 phần tử từ a[i] đến a[n] hốn vị với phần tử a[i]  Sau n-1 bước mảng xếp 10 3.3 Sắp xếp xen Giải thuật Ví dụ minh họa Sắp xếp dãy số nguyên A gồm số nguyên sau: B1 B2 3 88 Xem phần tử a[1] dãy có thứ tự Xen phần tử a[2] vào danh sách có thứ tự a[1] 5a[1],9a[2] danh sách có thứ tự B3 cho Xen phần tử a[3] vào danh sách có thứ tự a[1], a[2] 55 B4 33 18a[1], 19a[2], a[3] danh sách có thứ tự cho B5 Xen phần tử a[4] vào danh sách có thứ tự a[1], a[2], 3sao5cho8 a[1], 79 a[2], a[3], a[4] danh sách có thứ a[3] Xenphần phầntử tửa[6] a[5]vào vàodanh danhsách sáchđã đãcó cóthứ thứtự tựa[1], a[1],a[2], a[2], Xen tự a[3],a[4], a[4] a[5] cho a[2],a[2], a[3],a[3], a[4],a[4], a[5] a[5], danh a[3], a[1], cho a[1], a[6] sáchdanh có thứ tự.có thứ tự sách 14 Tóm tắt giải thuật xếp xen Trước hết ta xem phần tử a[1] dãy có thứ tự B1 Xen phần tử a[2] vào danh sách có thứ tự a[1] cho a[1], a[2] danh sách có thứ tự B2 Xen phần tử a[3] vào danh sách có thứ tự a[1], a[2] cho a[1], a[2], a[3] danh sách có thứ tự … Bi Xen phần tử a[i+1] vào danh sách có thứ tự a[1], a[2],…,a[i] cho a[1], a[2], …, a[i+1] danh sách có thứ tự Sau n-1 bước mảng xếp 15 Chương trình PROCEDURE InsertSort; VAR i,j,n: integer; BEGIN {1} FOR i := TO n DO BEGIN {2} j:=i; {3} While(j>1)and(a[j]1)and(a[j]

Ngày đăng: 08/07/2013, 01:26

Từ khóa liên quan

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

Tài liệu liên quan