Bài viết chia sẻ danh sách sách khoa học máy tính mà tác giả coi là yêu thích và giải thích lý do chọn chúng. Trong số đó, cuốn "The Art of Computer Programming" của Donald E. Knuth (Addison‑Wesley, bản tái bản 1997/2011) được nhấn mạnh vì nội dung bao gồm phân tích toán học của các thuật toán sắp xếp, tìm kiếm và các kỹ thuật tổ hợp. Tác giả chỉ ra rằng việc đọc từng chương giúp lập trình viên hiểu sâu về độ phức tạp thời gian và không gian, từ đó có thể chọn hoặc thiết kế giải pháp hiệu quả hơn cho các vấn đề thực tế. Khi áp dụng những kiến thức từ sách, nhiều dự án đã giảm thời gian chạy trung bình xuống 30‑40% so với cách tiếp cận dựa trên thư viện phổ biến mà không có sự tối ưu hóa lý thuyết. Bài viết kết luận rằng đầu tư thời gian vào việc nghiên cứu các bản gốc toán học của khoa học máy tính là cách tốt nhất để phát triển khả năng giải quyết vấn đề và tránh phụ thuộc quá mức vào các công cụ đóng gói.
Why read it: Sách này cung cấp nền tảng toán học sâu sắc và cách tiếp cận hệ thống để giải quyết vấn đề lập trình, giúp lập trình viên nâng cao tư duy giải thuật và kỹ năng tối ưu hóa.
Answer 3 short questions to earn reward points for this article. Only do it if you want the points.
3 questions · under a minute · optional
Source: https://backtracking.github.io/en/2020/02/20/cs-books.html. 8 Sync News only summarizes and links out; content copyright belongs to the authors and original sources.
Đang tải bình luận…
Một chuyên gia công nghệ với 20 năm kinh nghiệm lập luận rằng danh xưng "Full-Stack Developer" đang trở nên hạn chế, thay vào đó đề xuất khái niệm "Feature Expert" (Chuyên gia Tính năng). Giá trị cốt lõi không nằm ở ngôn ngữ hay framework mà ở khả năng nhận diện các mẫu vấn đề lặp đi lặp lại (tính toán giá, tối ưu tìm kiếm, caching) và giải quyết chúng bất kể tech stack. Bài viết khuyên các lập trình viên trình độ trung cấp nên tập trung vào cấu trúc dữ liệu và xây dựng kho kiến thức các vấn đề đã giải quyết thay vì tích lũy ngôn ngữ.
Là người muốn nâng cao hiệu quả làm việc và chuyên sâu trong các vấn đề thực tế như tính toán giá, tối ưu tìm kiếm hay quản lý bộ nhớ, bài viết này giúp bạn chuyển từ kiến thức kỹ thuật sang tư duy giải quyết vấn đề xuyên suốt các ngôn ngữ và công nghệ.
Tìm hiểu các thuật toán xử lý chuỗi JavaScript phổ biến như đảo ngược chuỗi, phát hiện chuỗi đối xứng (palindrome), sử dụng kỹ thuật hai con trỏ (two pointers) và tối ưu hóa giải pháp thực tế.
Những kỹ thuật và ví dụ về xử lý chuỗi trong JavaScript này sẽ giúp bạn giải quyết các vấn đề thực tế trong interview và dự án, từ đó nâng cao khả năng tư duy logic và hiệu suất lập trình của bạn.
Bài viết giới thiệu Sing-song, một phương pháp mã hóa các số dài (như hex 51ac0759fc4d) thành chuỗi ký tự dễ đọc, dễ nhớ (như kalo-tadu-komu-tigi) bằng cách kết hợp các âm tiết có nghĩa.
Lập trình viên nên đọc bài này để tìm hiểu cách chuyển đổi các chuỗi số dài hoặc mã hóa thành các mẫu âm nhạc dễ nhớ, giúp cải thiện hiệu suất trong việc lưu trữ, chia sẻ và quản lý thông tin phức tạp trong các ứng dụng.
Thuật toán yy trong thư viện yyjson, thuộc họ Schubfach, chuyển đổi double sang string nhanh hơn nhờ chỉ dùng một phép nhân với lũy thừa 10 đã tính trước, thay vì hai hoặc ba như phiên bản cổ điển. Bài viết phân tích chi tiết bốn giá trị thập phân ứng cử, ba điều kiện tiên quyết, và giải thích trường hợp biên 116 như một hiệu chỉnh cố định.
Những lập trình viên cần tìm hiểu về yyjson và tối ưu hóa chuỗi số thực sẽ tìm thấy trong bài giải pháp hiệu quả hơn nhiều so với các phương pháp truyền thống, đặc biệt khi muốn giảm thiểu số lần nhân và trùng lặp tính toán trong việc chuyển đổi double thành chuỗi.
YouTube đếm lượt xem trực tiếp hàng triệu người mà không dùng HashMap. Khi xem trận World Cup trực tiếp, YouTube hiển thị số lượt xem theo thời gian thực, giải quyết thách thức kỹ thuật khi xử lý lượng truy cập khổng lồ.
Đọc bài này để hiểu cách YouTube xử lý hiệu suất và tính toán số người xem trực tiếp hàng triệu người mà không cần sử dụng bộ nhớ cấp cao như HashMap, giúp bạn áp dụng kiến thức về cơ sở dữ liệu phân tán và kỹ thuật giảm chi phí bộ nhớ trong các ứng dụng thực tế.
Phiên bản v0.9 của ngôn ngữ lập trình Gleam (dành cho Erlang VM) đã được phát hành, giới thiệu những cập nhật và cải tiến mới.
Lập trình viên tìm kiếm hiệu suất và tính nhất quán của Erlang VM nhưng muốn một ngôn ngữ mạnh mẽ hơn với kiểu dữ liệu tĩnh sẽ thích thú với những tính năng mới của Gleam v0.9 như hỗ trợ kiểu dữ liệu mới và cải tiến tính tương thích.
Công cụ trực quan Prolly Tree cho phép xem tương tác cấu trúc cây Prolly Tree chạy trên trình duyệt, minh họa các tính năng như chỉnh sửa, so sánh nhanh, chia sẻ cấu trúc và độc lập lịch sử.
Lập trình viên muốn tối ưu hóa hiệu năng cho ứng dụng dữ liệu hoặc phát triển hệ thống phân tán nên đọc để hiểu cách Prolly Tree giúp giảm chi phí bộ nhớ và tăng tốc độ xử lý thay vì sử dụng cây nhánh truyền thống.
Hôm nay, mình học cách giải bài toán Next Greater Element bằng cấu trúc dữ liệu Stack trong Java & DSA.
Lập trình viên nên đọc bài này vì bài giải Next Greater Element bằng Stack sẽ giúp bạn hiểu cách tối ưu hóa thuật toán với thời gian O(n) và không gian O(n) trong các vấn đề tìm kiếm phần tử lớn hơn trong mảng, một kỹ năng thiết yếu cho các bài toán tìm kiếm và xử lý dữ liệu hiệu quả.
Read the news here, practice coding, follow structured courses and train for IELTS on our sibling products — all connected through one 8 Sync account.
The ecosystem home: product overviews, blog and full pricing.
ExploreLearn along a clear roadmap: videos, auto-graded quizzes, certificates and mentors who ship for a living.
View the roadmap1,000+ DSA problems in Vietnamese, auto-graded across 7 languages — many FREE, right in your browser.
Practice for freeAI grading for all four IELTS skills with detailed rubric feedback.
Try it freeA 22 MB AI IDE for Vietnamese devs.
Download freeOrganizational memory for AI agents.
ExploreAI that staffs your Fanpage and qualifies leads for you.
Try it