Grokking Newsletter

By Grokking Vietnam

#229 - Hệ thống authorization ở Netflix

#232・
10K

subscribers

233

issues

Subscribe to our newsletter

By subscribing, you agree with Revue’s Terms of Service and Privacy Policy and understand that Grokking Newsletter will receive your email address.

Grokking Vietnam
Grokking Vietnam
Trong số này, chúng ta cùng tìm hiểu về:
  • Cách DoorDash modularize dịch vụ xếp hạng
  • Hệ thống authorization ở Netflix
  • Lời giải bài Possible Bipartition
Ngoài ra các bạn vẫn có thể tiếp tục đặt mua ấn phẩm Dijkstra tập 2 tại đây nhé.

Những bài viết hay
Góc Lập Trình
Đề ra tuần này: Minimum Knight Moves
(by ndaadn)
Cho một bàn cờ vua rộng vô hạn, và quân mã tại toạ độ [0, 0]. Quân mã có thể di chuyển tới một trong 8 vị trí tiếp theo trên bàn cờ. Hãy tìm số lần di chuyển nhỏ nhất để quân mã tới được toạ độ [x, y].
Lời giải đề bài tuần trước: Possible Bipartition
(by phucnh)
Bài toán này là một ứng dụng điển hình của đồ thị lưỡng phân (Bipartite graph), hay còn có tên tiếng Việt khác là đồ thị hai phía. Ta gọi mỗi người là một đỉnh của đồ thị, nếu người a ghét người b, ta nối đỉnh a với đỉnh b bằng một cạnh. Nếu ta có thể tô toàn bộ các đỉnh của đồ thị bằng nhiều nhất 2 màu, sao cho 2 đỉnh liền kề có màu khác nhau, ta có thể thoả mãn yêu cầu đề bài. Nếu ta phải dùng nhiều hơn 2 màu để tô toàn bộ các đỉnh của đồ thị, ta không thể chia n người thành 2 nhóm thoả mãn điều kiện đề bài.
Để thực hiện kiểm tra xem đồ thị có thể được tô bằng nhiều nhất 2 màu hay không, ta có thể thực hiện duyệt đồ thị theo chiều sâu (DFS) như sau: https://pastebin.com/UYhdNVKh
Trên thực tế, giải thuật trên đây cũng là cách đơn giản nhất để kiểm tra đồ thị lưỡng phân. Bên cạnh đó, ta cũng có thể thực hiện tô màu đồ thị với BFS.
Ngoài ra, tô màu đồ thị (Graph Coloring) là một dạng bài toán khá thú vị, và có nhiều ứng dụng trong thực tế, mời bạn đọc tham khảo thêm link Graph Coloring Problem
Code & Tools
  • bigquery-utils - một repo chứa các scripts, udfs, views, và các ứng dụng hữu ích khác giúp cho việc migration và các lệnh cho data warehouse ở BigQuery
  • cbindgen - một tool giúp khởi tạo C bindings cho Rust code
Feedback
Bạn đánh giá nội dung số newsletter này thế nào?
(1 = Rất tệ / 5 = Rất tốt)
👎 1 —— 2 —— 3 —— 4 —— 5 👍 
(Việc đánh giá của các bạn là rất quan trọng, sẽ giúp chúng tôi liên tục cải thiện nội dung newsletter tốt hơn)
Grokking mang lại cho các bạn những kiến thức mới mẻ và hữu ích thông qua:
  • Tech Talk: Là một hoạt động thường xuyên của Grokking từ những ngày đầu thành lập. Tại đây các diễn giả chia sẻ kiến thức xoay quanh Computer Science và Software Engineer. Các buổi Tech Talk đều được record và upload lên kênh youtube của Grokking.
  • Grokking Knowledge Graph: Tập hợp những nguồn kiến thức phong phú với hơn 1000 bài viết chọn lọc, các đầu sách, khóa học, v.v… Các bài viết đều được gán nhãn để giúp bạn đọc dễ dàng tìm kiếm.
  • Webinar: Là chương trình kết nối các kỹ sư Việt Nam và các kỹ sư đang làm việc tại các công ty công nghệ hàng đầu thế giới.
  • Dijkstra: Một ấn phẩm được xuất bản bởi các thành viên của Grokking. Với những bài viết đào sâu vào kỹ thuật và kiến thức khoa học máy tính.
  • Kipalog: Nền tảng chia sẻ kiến thức dành cho các lập trình viên.
  • Newsletter: Những bài viết hay về công nghệ sẽ được gửi tới bạn hàng tuần qua email.
Chúc các bạn sẽ tìm được nhiều điều mới mẻ khi đến với Grokking và xin hẹn gặp lại các bạn vào tuần sau.
Quotes
Code is like humor. When you have to explain it, it’s bad.
– Cory House
Did you enjoy this issue? Yes No
Grokking Vietnam
Grokking Vietnam

Cảm ơn bạn đã dành thời gian đọc newsletter kỳ này và chúng tôi hi vọng rằng bạn đã khám phá ra một số điều mới mẻ từ các bài viết trên. Các bạn có thể đọc lại các số cũ tại website newsletter.grokking.org

In order to unsubscribe, click here.
If you were forwarded this newsletter and you like it, you can subscribe here.
Created with Revue by Twitter.
Viet Nam