Cảm thấy luyện thuật toán nhưng như kiểu học vẹt?

Donald Trump USA_No1

Senior Member
Mình luyện thuật toán trên leetcode thì bị vấn đề như sau:

Đối với những dạng, mẫu nào đã từng giải rồi thì mình làm rất nhanh, kiểu miễn là đã làm rồi thì ok. Còn dạng mới đa số không giải được hoặc chật vật vcl các thím ạ :(

Mình mới luyện được 1 tháng mà cảm thấy không lên ý :*(
 
Mình luyện thuật toán trên leetcode thì bị vấn đề như sau:

Đối với những dạng, mẫu nào đã từng giải rồi thì mình làm rất nhanh, kiểu miễn là đã làm rồi thì ok. Còn dạng mới đa số không giải được hoặc chật vật vcl các thím ạ :(

Mình mới luyện được 1 tháng mà cảm thấy không lên ý :*(
Cứ tiếp tục thôi bạn, bạn cần phân biệt rõ 2 loại khả năng. 1 là luyện để đầu óc mở mang, gặp vấn đề tương tự thì có thể có nhiều cách giải quyết, tóm lại có học có làm dù là học vẹt thì cũng hơn không học. Loại thứ 2 là loại dành cho năng khiếu, tư duy giải thuật cao để đi thi đấu hoặc nghiên cứu chuyên sâu thì cái này đòi hỏi nhiều hơn sự rèn luyện.

Mình cũng thuộc loại 1 và sau thời gian luyện cũng tóm tắt được 1 vài khái niệm và dạng bài cơ bản để khi cần có cái dùng đến chứ kêu đi nghiên cứu chuyên sâu hay đọc paper về giải thuật thì không phải mục tiêu của mình :D
 
Cái nayd kiểu như đi thi olympic hay hsg, gặp dạng đã làm rồi thì biết hướng mò, k thì khả năng tạch cao phen ơi vì có chạy đua tgian nữa
Mình cũng mới lên leetcode để cày mong có việc lương ngàn đô đây
 
Thì trò này có phải ai cũng cần master đâu.

Đến đợt muốn nhảy thì hardcore chút, còn ngày thưởng thỉnh thoảng đọc để biết nó dùng để làm gì, trên đời tiến bộ đến đâu, lúc cần mới kiếm lại dùng.

via theNEXTvoz for iPhone
 
Mấy thím nói sao chứ mình thấy có phải học vẹt đâu. Tư duy cả mà, tuy nhiên có những thuật toán quan trọng thì phải nhớ cốt lõi của nó ( vd: dynamic programming ) mà có nhiều nhặn gì đâu ( vét cạn, recursion, linklist,... ), nắm chắc cốt lõi + tư duy tí là ra nhé. Tuy nhiên cái đó chỉ áp dụng medium chứ mấy bài hard đôi khi khó vl
PS: mà thím mới luyện có 1 tháng mà than gì khoảng 3-4 tháng mới thấm
 
Trước hết thím cần nắm thật vững cấu trúc dữ liệu và giải thuật cơ bản. Từ đó phát triển lên các dạng nâng cao hơn. Nhiều bài(ngay cả medium) cần thêm tricks để giải. Làm nhiều sẽ hình thành pattern trong đầu nhưng không đảm bảo thím sẽ giải được tất cả. Nhiều bài cần kết hợp nhiều giải thuật mới ra. Quan trọng vẫn là tư duy thuật toán.
Điều thứ 2 cũng quan trọng là luyện “code chay” không cần debug trên IDE.
Luyện đến tầm 70-100 bài thì tham gia contests để lên trình.
 
Last edited:
Thầy từ ngày luyện thuật toán giúp hạn chế viết code ngôn lù :)
t đi làm gặp nhiều đồng chí k rành thuật toán lắm, với các vấn đề dễ thì tư duy logic nhanh, ok. Mà gặp các vấn đề hại não động chạm đến thuật toán là đơ ra ngay, k suy nghĩ được gì, biết thuật toán và áp dụng nó vào code vẫn khác biệt hẳn về logic, trình độ và LƯƠNG :p
 
Back
Top