Grokking Newsletter

By Grokking Vietnam

#238 - Làm thế nào để contribute vào mã nguồn Redis?

#242・
10.2K

subscribers

246

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ề:
  • Nguyên nhân làm chậm Node.js server ở Trivago
  • Làm thế nào để contribute vào mã nguồn Redis?
  • Giải quyết vấn đề scaling với Hexagons và Elasticsearch
  • Lời giải bài Remove Nth Node From End of List
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.

News
(by lpv)
The 2022 Founder Salary Report
Microsoft Reportedly Cuts Nearly 1,000 Employees—Here Are The Biggest U.S. Layoffs This Year
Stability AI, the startup behind Stable Diffusion, raises $101M
Những bài viết hay
Góc Lập Trình
Đề ra tuần này: Masking Personal Information
Cho trước một chuỗi s, đại diện cho địa chỉ email hoặc số điện thoại. Trả lại chuỗi đã được xử lý bằng cách sử dụng các quy tắc dưới đây.
- Để che dấu một email:
+ Các chữ hoa trong tên và miền phải được chuyển thành chữ thường.
+ Các chữ cái giữa của tên (nghĩa là tất cả trừ các chữ cái đầu tiên và cuối cùng) phải được thay thế bằng 5 dấu sao "*****".
- Để che một số điện thoại:
+ Loại bỏ tất cả các ký tự phân tách sau {'+', '-', '(', ')', ' '}
+ Số điện thoại được che phải có dạng:
"***-***-XXXX" nếu mã quốc gia có 0 chữ số.
"+*-***-***-XXXX" nếu mã quốc gia có 1 chữ số.
"+**-***-***-XXXX" nếu mã quốc gia có 2 chữ số.
"+***-***-***-XXXX" nếu mã quốc gia có 3 chữ số.
+ “XXXX” là 4 chữ số cuối cùng của số địa phương.
Ví dụ:
Input: s = "1(234)567-890"
Output: "***-***-7890"
Lời giải đề bài tuần trước: Remove Nth Node From End of List
(by ndaadn)
Đây là một bài toán cơ bản về danh sách liên kết. Thông thường, ta có thể lặp qua toàn bộ danh sách liên kết để đếm tổng số nút của danh sách, sau đó xác định vị trí của phần tử thứ n tính từ nút cuối cùng rồi thực hiện lặp một lần nữa để xóa nút đó.
Tuy nhiên, ta còn có cách giải quyết với chỉ một lần lặp bằng cách sử dụng 2 con trỏ (tạm gọi là con trỏ fast và con trỏ slow) như sau:
  • Dịch chuyển con trỏ fast n nút về phía trước.
  • Lần lượt dịch chuyển mỗi con trỏ từng bước một cho đến khi con trỏ fast trỏ vào nút cuối cùng của danh sách liên kết. Lúc này con trỏ slow đang ở vị trí trước vị trí nút cần loại bỏ, từ đó ta chỉ cần gán slow->next = slow -> next -> next là bài toán được giải quyết.
Cài đặt cho cách giải trên như sau: https://pastebin.com/qnGpuZyk
Độ phức tạp thuật toán là O(N).
Code & Tools
  • k6 - k6 là một công cụ load test được phát triển và open source bởi Grafana Labs. k6 cung cấp các API, tập lệnh rõ ràng, dễ tiếp cận, có thể thực thi cục bộ (local) cũng như trên nền các dịch vụ điện toán đám mây với tùy chỉnh cấu hình linh hoạt cho người dùng. 
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
Unix will give you enough rope to shoot yourself in the foot. If you didn’t think rope would do that, you should have read the man page.
— @mhoye
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