Dãy Fibbonacci Xét ma trận F=  

Một phần của tài liệu Thuật toán và một số thuật toán sơ cấp (Trang 33)

1. Mơ tả thuật tốn trộn hai mảng sắp thứ tự thành một mảng sắp thứ tự. Đánh giá độ phức tạp của thuật tốn. Từ đĩ đánh giá độ phức tạp của thuật tốn sắp xếp trộn. phức tạp của thuật tốn. Từ đĩ đánh giá độ phức tạp của thuật tốn sắp xếp trộn.

2. Mơ tả thuật tốn chèn một phần tử T vào một mảng A sắp thứ tự tăng cho trước sao cho mảng vẫn cịn sắp thứ tự. sao cho mảng vẫn cịn sắp thứ tự.

3. Trong thuật tốn sắp xếp trộn, thay vì chia mảng T thành 2 phần, ta sẽ chia nĩ thành 3 phần. Hãy mơ tả thuật tốn tương ứng. thành 3 phần. Hãy mơ tả thuật tốn tương ứng.

4. Dãy Fibbonacci. Xét ma trận F=       1 1 1 0

. Giả sử i, j là hai số ngun. Cái gì là tích của vectơ (i,j) và ma trận F? Điều gì xảy ra nếu i, j là hai số Fibbonacci liên tiếp? Dùng kỹ thuật chia để trị tính số Fibbonacci thứ n.

Gợi ý: áp dụng kỹ thuật chia để trị ể tính đ lũy thừa.

Gợi ý: áp dụng kỹ thuật chia để trị ể tính đ lũy thừa.

max=T[0]; index=0;

For ( 1;i<n;i++) { If (max < T[i]) { max=T[i]; index=i;} }i=

Ở đây ta chỉ quan tâm tới số phép so sánh giữa các phần tử. Ta cĩ thể tiếp tục tìm phần tử nhỏ nhất của T bằng cách thực hiện 2 phép so sánh nữa như saun-

T[index]=T[0]; min=T[1 ];

For ( 2;i<n;i++) { If (min > T[i]) { min=T[i]; } }i=

Hãy đưa ra một thuật tốn cĩ thể tìm cả phần tử lớn nhất và phần tử nhỏ nhất của mảng gồm phần tử bằng cách thực hiện ít hơn 2 3 phép so sánh. Cĩ thể giả thiết n n- n là lũy thừa

của 2

Giải quyết trường hợp n khơng là lũythừa của 2.

6. Giả sử T[n] là mảng sắp thứ tự tăng các số nguyên đơi một khác nhau, một vài số trong mảng cĩ thể là số âm. trong mảng cĩ thể là số âm.

Một phần của tài liệu Thuật toán và một số thuật toán sơ cấp (Trang 33)

Tải bản đầy đủ (PDF)

(71 trang)