01/10/2018, 15:47

Bài toán ZigZag Array

Bài này mình tìm thấy trên GeeksforGeeks,
https://www.geeksforgeeks.org/convert-array-into-zig-zag-fashion/
mình giải bằng cách sắp xếp lại mảng rồi xếp lại nhưng cách đó chưa được tối ưu như cách họ giải. Có điều mình không hiểu tại sao họ lại để cái flag = true nghĩa là “mối quan hệ <” và đoạn cuối lại có “flag = !flag” để làm gì?

rogp10 viết 17:54 ngày 01/10/2018

Thực ra yêu cầu bài này chỉ mang tính cục bộ nên ta kỳ vọng sẽ được O(n). Với hai số thực bất kì ta chỉ có 3 khả năng a < b, b < a hay a == b. Thấy như vậy thì có ngay lời giải.
Câu hỏi của bạn mang tính kĩ thuật, tức là ghi nhận lúc này phải là <, ngay sau đó phải đổi lại là >, rồi lại <, thì dùng boolean là ổn.

Bài liên quan
0