Wednesday, July 30, 2014

Một số bài cho hai bạn không kiểm tra giữa kỳ

Bài 1. Tìm số phòng họp nhỏ nhất cho các cuộc họp


Đầu vào: Danh sách các cuộc họp với thời điểm bắt đầu và kết thúc
struct meeting
{
int start, end;//thời điểm bắt đầu và kết thúc
}
Đầu ra: đưa ra số phòng ít nhất cần dùng để đảm bảo không cuộc họp trùng giờ được tổ chức cùng phòng

int minNoRoom(struct meeting A[], int n)

trong đó A là mảng chứa danh sách các cuộc họp và n là số lượng phần tử

Chú ý: Các cuộc họp này đã được xếp theo thứ tự tăng dần về thời điểm bắt đầu

Bài 2. Kiểm tra xem hai xâu có phải là bị biến đổi bởi phép xoay hay không


Đầu vào: hai xâu ký tự có cùng độ dài
Đầu ra: nếu hai xâu được tạo ra bởi phép xoay thì trả về là true, ngược lại trả về là false

int checkIsRotation(char *s1, char *s2)

VD.
S1="amazon" S2="azonam" return true
S1="quality" S2="lityqua" return false

Chú ý: Bạn có thể dùng các hàm có sẵn của thư viện string.h

Bài 3. Viết hàm tìm và trả về nút lá sâu nhất trên cây nhị phân


struct BNODE deepestNode(struct BNODE *root)

trong trường hợp có nhiều nút thì chỉ cần trả về 1 nút

Hạn nộp: Thứ 2 tuần tới (4/8/2014)
Mang máy và chương trình tới lớp để bảo vệ!


No comments:

Post a Comment