01/10/2018, 09:33

Thuật toán tìm kiếm nổi bọt

http://codepad.org/JPxzwSaK

hello everyone
dòng 55 56:
if (!swapped) {
break;

em không hiểu lắm, viết vậy nghĩa là sao ạ
ac nào có thể giúp em được ko.
thật ra em ko đi học thêm chỉ tự học nên có nhiều thắc mắc ko biết hỏi ai. chỉ biết lên đây tìm sự giúp đỡ
cám ơn ac

2D_team_free_online_Education viết 11:39 ngày 01/10/2018

cái ! là toán tử phủ định , tức là nếu NOT swapped =true thì break

Nguyễn Khanh viết 11:43 ngày 01/10/2018

nghĩa là sao anh. cái swapped nó được định nghĩa dạng bool nghĩa là nó chỉ có 2 giá trị TRUE hoặc FALSE
phủ định lại nó là phủ định lại true hay false ạ

vũ xuân quân viết 11:35 ngày 01/10/2018

Đầu tiên là em nên học cách chạy debug đoạn code mình đã viết xem chạy như thế, có đúng với suy nghĩ của mình không. Cách debug rất quan trọng vì giúp mình hiểu đoạn code mình viết và tìm lỗi.

Còn về thuật toán này. anh sẽ giải thích về biến swapped.
ý nghĩ của biến này là cờ, giúp cho biết là cần thực hiện tiếp thuật toán sắp xếp nữa không.
nếu bằng flase --> không thực hiện tiếp thuận toán sắp xếp và kết thúc vòng lặp for (i = 0; i < MAX - 1; i++)
nếu bằng true --> tiếp tục vòng lặp.

if (!swapped) : còn ý nghĩ của cái này thì em nên coi về mệnh đề if và ý nghĩ của dấu !

Nguyễn Khanh viết 11:34 ngày 01/10/2018

dạ, chân thành cám ơn a

2D_team_free_online_Education viết 11:35 ngày 01/10/2018

phủ định của true là false và ngược lại , ko ghi gì thì tức là cái đóng đấy = true , nghĩa là phủ định của swap… mà bằng true thì dk thỏa mãn

Bài liên quan
0