GIẢI THÍCH MỘT SỐ DẠNG BIG O: O(LOGN) Đây là một độ phức tạp điển hình, có rất nhiều trong các dạng cấu trúc dữ liệu và giải thuật cơ bản. Nắm được cách tính độ phức tạp O(logn) của các thuật toán sẽ giúp bạn tự tin hơn được 50% trong hầu hết các dạng big O. Trước khi bắt đầu bài viết, mình muốn các bạn cần tìm hiểu qua về hai bài viết cũ của mình về Big O là gì và cách tính độ phức tạp của Big O cho hàm đệ quy. Bạn tham khảo qua hai bài viết sau:
Tìm hiểu về vector một cách dễ hiểu và chi tiết Bạn đã từng học và nghe qua về Vector, nhưng bạn đã thực sự hiểu chúng chưa. Hãy cùng mình tìm hiểu nhé! Trước khi định nghĩa Vector là gì thì chúng ta hãy nhớ thử xem khi người ta nhắc về Vector, bạn liên tưởng về cái gì: - Là một mũi tên với con số thể hiện trên đó - Hay đôi khi nó còn là 1 ma trận 1 cột è Thực ra thì vector bao gồm cả hai cái đó, nó có chung một định nghĩa, nhưng sẽ có những cách biểu diễn khác nhau. Cho một điểm A(4, 3) như hình Ta muốn di chuyển A đến tọa độ (6,5). Trong lúc này, ta muốn có một phép toán nào đó đại loại A(4, 3) + alpha = A(6,5). Alpha này gọi là Vector. Bạn để ý rằng nó giống như một hướng dẫn di chuyển cho điểm vậy. Để hướng dẫn một gì đó di chuyển tới vị trí nào đó, ta thường sẽ xác định 2 thông tin, thứ nhất đó là hướng, và thứ hai đó là độ lớn (số bước đi). Theo như định...