1. Trang chủ
  2. » Công Nghệ Thông Tin

BÀI TẬP CÔNG NGHỆ THÔNG TIN TRƯỜNG ITC_3 pot

9 250 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Minh Họa Cho Dãy Cú 8 Phần Tử Sắp Xếp Theo Vi Trớ Tăng Dần
Tác giả Dương Thành Phết
Trường học Khoa CNTT Trường CĐ CNTT TP.HCM
Chuyên ngành Công Nghệ Thông Tin
Thể loại Bài Tập
Thành phố TP.HCM
Định dạng
Số trang 9
Dung lượng 489,12 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

© Dương Thành Phết-www.thayphet.net Minh Họa Cho dãy có 8 phần tử Sắp xếp theo vi trí tăng dần ðoạn cần sắp xếp i=1; j=3 L X=2 R L=1 R=3 Khoa CNTT Trường Cð CNTT TP.HCM This is trial v

Trang 1

© Dương Thành Phết-www.thayphet.net

 Minh Họa

Cho dãy có 8 phần tử Sắp xếp theo vi trí tăng dần

ðoạn cần

sắp xếp

i=1; j=3

L X=2 R

L=1

R=3

Khoa CNTT Trường Cð CNTT TP.HCM

This is trial version www.adultpdf.com

Trang 2

© Dương Thành Phết-www.thayphet.net

 Minh Họa

Cho dãy có 8 phần tử Sắp xếp theo vi trí tăng dần

ðoạn cần

sắp xếp

Không còn ñoạn nào cần sắp xếp

Khoa CNTT Trường Cð CNTT TP.HCM

This is trial version www.adultpdf.com

Trang 3

ðoạn [1- 8]

ðoạn [4- 8]

ðoạn [5- 8]

ðoạn [6- 8]

ðoạn [6- 7]

ðoạn [4- 5]

ðoạn [1- 3]

This is trial version www.adultpdf.com

Trang 4

© Dương Thành Phết-www.thayphet.net

 Giải thuật:

Bước 1:

i=1;

Bước 2:

j=N;

Trong khi (j>i) thực hiện:

Nếu a[j]<a[j-1]: Hoán vị a[j] và a[j-1] j—;

Bước 3:

i=i+1;

Nếu i>N-1: Hết dãy, dừng Ngược lại: Lặp lại Bước 2

Khoa CNTT Trường Cð CNTT TP.HCM

This is trial version www.adultpdf.com

Trang 5

© Dương Thành Phết-www.thayphet.net

Cài ðặt void QuickSort(int M[], int First, int Last){

int i, j, tam, x;

x = M[(First+Last)/2]; i = First; j = Last;

do { while (M[i] <x) i++;

while (M[j] > X) j ;

if (i <= j) {

tam=M[i];

M[i]=M[j];

M[j]=tam;

i++; j ;

} }while (i<= i);

QuickSort(M, First, j);

QuickSort (M, i, Last);

}

Khoa CNTT Trường Cð CNTT TP.HCM

This is trial version www.adultpdf.com

Trang 6

ẹ Dương Thành Phết-www.thayphet.net

 đánh giá giải thuật:

+ Trường hợp tốt nhất, khi mảng M có thứ tự tăng:

Số phép gán: Gmin = N-1

Số phép so sánh: Smin = NừLog2(N)/2

Số phép hoán vị: Hmin = 0 + Trường hợp xấu nhất, khi phần tử X ựược chọn

ở giữa dãy con là giá trị lớn nhất:

Số phép gán: Gmax = Nừ(N-1)/2

Số phép so sánh: Smax = (N-1)ừ(N-1)

Số phép hoán vị: Hmax = Nừ(N-1)/2 + Trung bình:

Số phép gán: Gavg = (N-1)ừ(N+2)/4

Số phép so sánh: Savg = Nừ[Log2(N)+2NỜ2]/4

Số phép hoán vị: Havg = Nừ(N-1)/4

Khoa CNTT Trường Cđ CNTT TP.HCM

This is trial version www.adultpdf.com

Trang 7

© Dương Thành Phết-www.thayphet.net

Chi phí trung bình O(n*log2n)

Chi phí cho trường hợp xấu nhất O(n2)

Chi phí này phụ thuộc vào cách chọn phần tử trục:

- Nếu chọn ñược phần tử có giá trị trung bình ta

sẽ chia thành 2 dãy bằng nhau

- Nếu chọn nhằm phần tử nhỏ nhất (hay lớn nhất)  O(n2)

Khoa CNTT Trường Cð CNTT TP.HCM

This is trial version www.adultpdf.com

Trang 8

1 Trình bày tư tưởng và minh họa giải thuật tìm kiếm tuyến tính, tìm kiếm nhị phân

2 Cài ñặt thuật toán tìm tuyến tính bằng cách:

- Sử dụng vòng lặp for

- Sử dụng vòng lặp while

3 Trong trường hợp các phần tử của dãy ñã có thứ tự tăng (hoặc giảm) hãy cài ñặt lại thuật toán tìm nhị phân

2.3 Bài Tập

© Dương Thành Phết-www.thayphet.netThis is trial version Khoa CNTT Trường Cð CNTT TP.HCM

www.adultpdf.com

Trang 9

1 Trình bày tư tưởng và minh họa 5 giải thuật sắp xếp

2 Cài ñặt 5 giải thuật sắp xếp theo các trường hợp và ñiền kết quả số lần thực hiện các phép toán vào bảng sau:

© Dương Thành Phết-www.thayphet.netThis is trial version Khoa CNTT Trường Cð CNTT TP.HCM

www.adultpdf.com

Ngày đăng: 13/08/2014, 23:21

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm