Chuẩn bị chương trình Pothon

Các liên kết bên dưới được thêm dưới dạng tài nguyên miễn phí cho từng chủ đề và bản pdf bao gồm tất cả các câu hỏi bắt buộc cũng như các giải pháp của chúng, theo từng chủ đề

Những tài nguyên này đã giúp tôi có được cơ hội thực tập tại công ty mơ ước Amazon của tôi và tôi hy vọng nó cũng sẽ giúp ích cho bạn

Tôi sẽ tiếp tục cập nhật kho lưu trữ này, nếu tôi cảm thấy thiếu bất cứ thứ gì

🏆Tôi cần chuẩn bị gì cho buổi phỏng vấn?

Để có được công ty mơ ước, bạn nên làm tốt những điều sau khi đi phỏng vấn

📘Cấu trúc dữ liệu và thuật toán vững chắc. Hiểu sâu về các chủ đề này, cách kết hợp chúng, cách tìm/thiết kế những chủ đề phù hợp cho một vấn đề, v.v. Điều này không có gì đáng ngạc nhiên vì thực sự đây là những chủ đề cơ bản nhất mà phần lớn CS dựa vào

📘Mạnh mẽ trong OOPS. Thiết kế và nguyên tắc OO, các khía cạnh tinh tế của ngôn ngữ, hiểu rõ về khả năng và giới hạn của ngôn ngữ, thiết kế và triển khai của nó

📘Hiểu biết tốt về OS, DBMS, Networks. Những chủ đề này đã được nhấn mạnh mà sự hiểu biết của họ là cực kỳ quan trọng để trở thành một kỹ sư phần mềm thành công cho công việc cao cấp

📘Có khả năng viết mã có cấu trúc tốt và hiệu quả. Khả năng đánh giá hiệu quả của mã ở các cấp độ khác nhau – thuật toán, DS, cấp độ thực thi [OS], phần cứng để giảm bộ nhớ cũng như thời gian;


🏆Chọn ngôn ngữ

Trước bất cứ điều gì khác, bạn cần chọn một ngôn ngữ lập trình để thực hiện các cuộc phỏng vấn của mình trong

Tôi hỗ trợ học và viết mã bằng các ngôn ngữ lập trình khác nhau. Nhưng khi nói đến việc chuẩn bị phỏng vấn lập trình, tôi cảm thấy điều quan trọng là chọn một ngôn ngữ để tập trung vào việc chuẩn bị của bạn và tìm hiểu thật kỹ về nó

Phải mất một thời gian để thành thạo các ngôn ngữ và nếu bạn dành phần lớn thời gian và nguồn lực của mình để thành thạo các thuật toán, thì hầu như không còn nỗ lực nào để thành thạo một ngôn ngữ mới. Nếu bạn cảm thấy thoải mái với việc sử dụng một trong những ngôn ngữ chính, chỉ dành cho các cuộc phỏng vấn, thì không cần phải học một ngôn ngữ mới

Chọn một ngôn ngữ bạn đã làm việc và bạn tự tin

Nhưng nếu bạn có đủ thời gian, tôi khuyên bạn nên học những ngôn ngữ được sử dụng nhiều nhất trong các cuộc tuyển chọn
[đây chỉ là gợi ý của tôi, bạn cũng có thể học bất kỳ ngôn ngữ nào khác ngôn ngữ bạn muốn hoặc bạn cảm thấy thoải mái].
📕Tài nguyên miễn phí C++
📕Tài nguyên miễn phí Java
📕Tài nguyên miễn phí Python
📕C

Một số ngôn ngữ được sử dụng tại các tổ chức khác nhau như được báo cáo trực tuyến

📙Amazon. Nguồn Java, Javascript, Ruby, Python, Perl
📙Facebook. PHP, C++, Python, Java, Perl. Đánh giá cao về ngôn ngữ động/kịch bản. nguồn
📙Google. Nguồn C/C++, Java, Python, Javascript, Go
📙Microsoft. Nguồn C++, C#, Java, Python

tiền boa. Sử dụng ngôn ngữ mà bạn cảm thấy thoải mái, thực hiện bất kỳ loại vấn đề nào, giải quyết mọi thứ và viết mã VÀ cũng vui lòng biết về các chức năng bên trong cũng như cách các cấu trúc dữ liệu khác nhau được triển khai trong ngôn ngữ đó


🏆Làm thế nào để tôi có thể chuẩn bị tốt nhất cho buổi phỏng vấn?

Thực hành viết mã trong tài liệu Google, sau đó chạy các trường hợp thử nghiệm trên mã và tối ưu hóa mã đó. Dưới đây là một số tài liệu sẽ giúp. Bên trong thông tin sẽ có một số liên kết, video và một số bài tập thực hành để giúp bạn biết những gì sẽ xảy ra. Dưới đây là những lưu ý hàng đầu

Bạn sẽ được giao một bài toán hoặc câu đố để giải và bạn sẽ cần nói về cách tiếp cận của mình và thảo luận về mức độ phức tạp của các giải pháp mà bạn đang đề xuất. Sau đó, bạn sẽ cần mã hóa giải pháp của mình. Bạn sẽ muốn thực hành viết mã với 100-150 bài toán chưa sắp xếp đầu tiên trên LeetCode

Luôn nói về giải pháp của bạn, giải thích bất kỳ sự đánh đổi nào bạn đang thực hiện giữa thời gian và trí nhớ và đặt bất kỳ câu hỏi nào bạn cần để làm rõ câu hỏi. Thật đáng để nói về những suy nghĩ ban đầu của bạn đối với một câu hỏi, mặc dù giải pháp vũ phu sẽ ít được đón nhận hơn là dành thời gian để soạn thảo một giải pháp hiệu quả hơn

🏆Trình tự học Cấu trúc dữ liệu và Giải thuật như sau

1️⃣Tài nguyên miễn phí về mảng & ma trận
2️⃣Tài nguyên miễn phí về chuỗi
3️⃣Tìm kiếm tài nguyên miễn phí
4️⃣Sắp xếp tài nguyên miễn phí
5️⃣Tài nguyên miễn phí băm
6️⃣Tài nguyên miễn phí xếp chồng
7️⃣Tài nguyên miễn phí xếp hàng
8️⃣Tài nguyên miễn phí danh sách liên kết
9️⃣Recursion Free Resource
1️⃣0️⃣Tài nguyên miễn phí quay lui
1️⃣1️⃣Tài nguyên miễn phí dạng cây
1️⃣2️⃣Tài nguyên miễn phí BST
1️⃣3️⃣Hàng đợi hoặc hàng đợi ưu tiên Tài nguyên miễn phí
1️⃣4️⃣Tài nguyên miễn phí đồ họa
1️⃣5️⃣Tài nguyên miễn phí tham lam
1️⃣6️⃣Tài nguyên miễn phí lập trình động
1️⃣7️⃣Trie Free Resource


🏆Mẹo chuẩn bị kỹ thuật.
Các lĩnh vực chính kỹ sư phần mềm nên chuẩn bị để thành công khi phỏng vấn tại FAANG.

📗Toán học. Tài nguyên miễn phí
Một số người phỏng vấn hỏi các câu hỏi toán rời rạc cơ bản. Điều này phổ biến hơn ở Google so với các công ty khác bởi vì xung quanh chúng tôi là các bài toán đếm, bài toán xác suất và các tình huống Toán rời rạc khác. Dành một chút thời gian trước cuộc phỏng vấn để làm mới trí nhớ của bạn [hoặc tự học] những điều cơ bản của tổ hợp và xác suất. Bạn nên làm quen với các bài toán n-chọn-k và vấn đề tương tự của chúng – càng nhiều càng tốt.

📗Độ phức tạp của thuật toán.
Điều khá quan trọng là bạn phải hiểu phân tích độ phức tạp của big-O. Một lần nữa chạy một số vấn đề thực hành để giải quyết vấn đề này trong ứng dụng.

📗Sắp xếp. Tài nguyên miễn phí
Biết cách sắp xếp. Đừng làm sắp xếp bong bóng. Bạn nên biết chi tiết về ít nhất một thuật toán sắp xếp n*log[n], tốt nhất là hai thuật toán [giả sử sắp xếp nhanh và sắp xếp hợp nhất]. Hợp nhất sắp xếp có thể rất hữu ích trong các tình huống mà quicksort không thực tế, vì vậy hãy xem nó.

📗Hashtables. Tài nguyên miễn phí
Có thể cho rằng cấu trúc dữ liệu quan trọng nhất mà nhân loại biết đến. Bạn hoàn toàn nên biết cách họ làm việc. Có thể triển khai một cách chỉ sử dụng mảng bằng ngôn ngữ yêu thích của bạn, trong khoảng không gian của một cuộc phỏng vấn.

📗Cây. Tài nguyên miễn phí Biết về cây cối; . Làm quen với cây nhị phân, cây n-ary và cây trie. Làm quen với ít nhất một loại cây nhị phân cân bằng, cho dù đó là cây đỏ/đen, cây splay hay cây AVL và biết cách thực hiện.
Hiểu thuật toán duyệt cây. BFS và DFS, đồng thời biết sự khác biệt giữa đặt hàng, đặt hàng sau và đặt hàng trước.

📗Đồ thị. Tài nguyên miễn phí
Đồ thị thực sự quan trọng. Có 3 cách cơ bản để biểu diễn một đồ thị trong bộ nhớ [đối tượng và con trỏ, ma trận và danh sách kề]; . Bạn nên biết các thuật toán duyệt đồ thị cơ bản. tìm kiếm theo chiều rộng và tìm kiếm theo chiều sâu. Biết độ phức tạp tính toán của chúng, sự đánh đổi của chúng và cách triển khai chúng trong mã thực. Nếu bạn có cơ hội, hãy thử nghiên cứu các thuật toán phức tạp hơn, chẳng hạn như Dijkstra và A*.

📗Cấu trúc dữ liệu khác.
Bạn nên nghiên cứu càng nhiều cấu trúc dữ liệu và thuật toán khác càng tốt. Bạn đặc biệt nên biết về các loại bài toán NP-đầy đủ nổi tiếng nhất, chẳng hạn như người bán hàng du lịch và bài toán chiếc ba lô, và có thể nhận ra chúng khi một người phỏng vấn hỏi bạn về chúng một cách ngụy trang. Tìm hiểu ý nghĩa của NP-đầy đủ.

📗Hệ điều hành. Tài nguyên miễn phí
Biết về các quy trình, luồng và sự cố đồng thời. Biết về khóa và mutexes và semaphores và màn hình cũng như cách chúng hoạt động. Biết về bế tắc và bế tắc và cách tránh chúng. Biết những tài nguyên nào mà một quy trình cần và một luồng cần cũng như cách hoạt động của chuyển đổi ngữ cảnh cũng như cách hệ điều hành và phần cứng cơ bản bắt đầu chuyển đổi ngữ cảnh. Biết một chút về lập kế hoạch. Thế giới đang nhanh chóng hướng tới đa lõi, vì vậy hãy biết các nguyên tắc cơ bản của cấu trúc đồng thời "hiện đại".

📗Mã hóa. Bạn nên biết ít nhất một ngôn ngữ lập trình thực sự tốt và tốt nhất nên là C ++ hoặc Java. Trăn cũng tốt. Bạn sẽ phải viết một số mã trong ít nhất một số cuộc phỏng vấn của mình. Bạn sẽ phải biết khá nhiều chi tiết về ngôn ngữ lập trình yêu thích của mình.


🏆Dự án

✔️Để biết ví dụ về dự án, bạn có thể kiểm tra các kho lưu trữ khác của tôi tại đây, Sẽ sớm bổ sung thêm nhiều dự án

✔️Nếu bạn là người mới bắt đầu và muốn học Cấu trúc dữ liệu và Thuật toán một cách thú vị😝, hãy thử làm dự án này, Nó sẽ giúp bạn hiểu rõ rất nhiều khái niệm, giúp bạn tự tin về kỹ năng của mình và bạn' sẽ có kiến ​​thức tốt hơn về DSA.
🦄Bạn cũng có thể đóng góp cho dự án và giúp đỡ cộng đồng nếu muốn.


🏆Trang tính quan trọng

Chia sẻ một số trang tính phổ biến nhất ở đây những trang tính ở đây có thể giúp bạn chuẩn bị. ]

📘Các vấn đề về tấm SDE của Striver KIỂM TRA TẠI ĐÂY

📘Tờ Love Babbar SDE KIỂM TRA TẠI ĐÂY

🏆MẸO THÊM

🔰Thực hành viết mã

📒Codestudio
📒LeetCode [Đi tới Vấn đề -> Thuật toán]
📒GeeksForGeeks
📒Hackerrank

🔰Chuẩn bị phỏng vấn chung

📚GeeksforGeeks
📚Khả năng mở rộng cao
📚Câu đố phỏng vấn

ĐỪNG QUÊN KIỂM TRA bài viết tiếp theo của tôi để chuẩn bị tốt hơn TẠI ĐÂY - Có nhiều mẹo và thủ thuật hơn về cách tôi chuẩn bị

Chủ Đề