Hướng dẫn can i use python in coding rounds? - tôi có thể sử dụng python trong các vòng viết mã không?

Ngôn ngữ lập trình bạn sử dụng để phỏng vấn mã hóa có quan trọng không? Câu trả lời là có.

Hầu hết các công ty cho phép bạn viết mã bằng bất kỳ ngôn ngữ nào bạn muốn - ngoại lệ duy nhất tôi biết là Google, nơi họ chỉ cho phép các ứng cử viên chọn từ Java, C ++, JavaScript hoặc Python cho các cuộc phỏng vấn mã hóa thuật toán của họ.

Tuy nhiên, sự lựa chọn bạn đưa ra có thể tác động đến hiệu suất của bạn nhiều hơn bạn muốn tin - và đây là lý do tại sao điều quan trọng là phải chọn ngôn ngữ lập trình phù hợp sớm trong việc chuẩn bị phỏng vấn mã hóa của bạn - và sử dụng thường xuyên trong thực tế.

Có 3 cân nhắc khi quyết định sử dụng ngôn ngữ lập trình nào:

  1. Sự phù hợp cho các cuộc phỏng vấn
  2. Sự quen thuộc của bạn với ngôn ngữ
  3. Ngoại lệ

Một số ngôn ngữ chỉ phù hợp hơn cho các cuộc phỏng vấn - các ngôn ngữ cấp cao hơn như Python hoặc Java cung cấp các chức năng thư viện tiêu chuẩn và cấu trúc dữ liệu cho phép bạn dịch giải pháp để mã hóa dễ dàng hơn.

Từ kinh nghiệm của tôi với tư cách là một người phỏng vấn, hầu hết các ứng cử viên chọn Python hoặc Java. Các ngôn ngữ thường thấy khác bao gồm JavaScript, Ruby và C ++. Tôi hoàn toàn tránh được các ngôn ngữ cấp thấp hơn như C hoặc GO, đơn giản vì chúng thiếu nhiều hàm thư viện tiêu chuẩn và cấu trúc dữ liệu và một số có thể yêu cầu quản lý bộ nhớ thủ công.

Cá nhân, Python là lựa chọn thực tế của tôi cho các cuộc phỏng vấn mã hóa thuật toán vì nó ngắn gọn và có một thư viện lớn các chức năng và cấu trúc dữ liệu có sẵn. Python cũng sử dụng API nhất quán hoạt động trên các cấu trúc dữ liệu khác nhau, chẳng hạn như len(), for ... in ... và ký hiệu cắt trên các chuỗi (chuỗi/danh sách/bộ dữ liệu). Nhận phần tử cuối cùng trong một chuỗi là arr[-1] và đảo ngược nó chỉ đơn giản là arr[::-1]. Bạn có thể đạt được rất nhiều với cú pháp tối thiểu trong Python.

Java cũng là một lựa chọn tốt nhưng phải liên tục khai báo các loại trong mã của bạn có nghĩa là các khoản phím bổ sung dẫn đến việc gõ nhiều hơn, điều này không dẫn đến bất kỳ lợi ích nào (trong một cài đặt phỏng vấn). Vấn đề này sẽ rõ ràng hơn khi bạn phải viết trên bảng trắng trong các cuộc phỏng vấn tại chỗ. Những lý do để chọn/không chọn C ++ tương tự như Java. Cuối cùng, Python, Java và C ++ là những lựa chọn tốt của ngôn ngữ.

  • Được đề xuất: Python, C ++, Java, JavaScript
  • Có thể chấp nhận (nhưng thích khuyến nghị nếu bạn quen thuộc): Go, Ruby, PHP, C#, Swift, Kotlin
  • Tránh: Haskell, Erlang, Perl, C, Matlab
  • Bạn phải nổi điên: Brainfuck, lắp ráp

Hầu hết thời gian, bạn nên sử dụng một ngôn ngữ mà bạn cực kỳ quen thuộc thay vì chọn một ngôn ngữ mới chỉ để sử dụng trong các cuộc phỏng vấn.

Nếu bạn bị ràng buộc theo thời gian, việc chọn một ngôn ngữ mới chỉ để phỏng vấn hầu như không phải là một ý tưởng tốt. Các ngôn ngữ cần có thời gian để làm chủ và nếu bạn đã dành phần lớn thời gian và nỗ lực của mình để sửa đổi/làm chủ các thuật toán, thì hầu như không còn năng lượng dự phòng để làm chủ một ngôn ngữ mới. Nếu bạn quen thuộc với việc sử dụng một trong các ngôn ngữ chính thống, không có lý do mạnh mẽ nào để học một ngôn ngữ mới chỉ để phỏng vấn.

Nếu bạn đã sử dụng Java tại nơi làm việc một thời gian và không có thời gian để làm quen với một ngôn ngữ khác, tôi sẽ khuyên bạn nên gắn bó với Java thay vì chọn Python từ đầu chỉ vì các cuộc phỏng vấn. Làm như vậy, bạn có thể tránh phải chuyển đổi ngữ cảnh giữa các ngôn ngữ trong quá trình làm việc so với các cuộc phỏng vấn. Hầu hết thời gian, nút cổ chai là trong suy nghĩ và không phải là văn bản. Phải mất một số làm quen trước khi người ta trở nên thông thạo ngôn ngữ và có thể dễ dàng sử dụng nó.Most of the time, the bottleneck is in the thinking and not the writing. It takes some getting used to before one becomes fluent in a language and be able to wield it with ease.

Lý do hợp lệ để học một ngôn ngữ mới:

  • Cuộc phỏng vấn yêu cầu sử dụng ngôn ngữ đó (vai trò dành riêng cho miền như di động/đầu tiên/khoa học dữ liệu)
  • Bạn không vội vàng để bắt đầu phỏng vấn

Những lý do kém để học một ngôn ngữ mới:

  • Công ty bạn đang phỏng vấn với việc sử dụng ngôn ngữ đó rất nhiều và bạn muốn gây ấn tượng với người phỏng vấn/cho thấy rằng bạn phù hợp
  • Bạn muốn cho thấy rằng bạn là hợp thời trang

Một ngoại lệ đối với quy ước cho phép bạn "chọn bất kỳ ngôn ngữ lập trình nào bạn muốn" là khi bạn đang phỏng vấn cho một vị trí dành riêng cho miền, chẳng hạn như các vai trò của kỹ sư mặt trước/iOS/Android, trong đó bạn sẽ cần phải làm quen với việc mã hóa Trong JavaScript, Objective-C/Swift và Java tương ứng. Nếu bạn cần sử dụng cấu trúc dữ liệu mà ngôn ngữ không hỗ trợ, chẳng hạn như hàng đợi hoặc đống trong JavaScript, có lẽ hãy thử hỏi người phỏng vấn xem bạn có thể cho rằng bạn có cấu trúc dữ liệu thực hiện các phương pháp nhất định với độ phức tạp thời gian được chỉ định không. Nếu việc thực hiện cấu trúc dữ liệu đó không quan trọng để giải quyết vấn đề, người phỏng vấn thường sẽ cho phép điều này. Trong thực tế, nhận thức được các cấu trúc dữ liệu hiện có và lựa chọn các cấu trúc thích hợp để giải quyết vấn đề trong tay là quan trọng hơn là biết các chi tiết thực hiện phức tạp.

Python có được phép trong vòng mã hóa Amazon không?

Bạn sẽ có thể biên dịch mã của mình bao nhiêu lần tùy thích trước khi gửi giải pháp và bạn có thể sử dụng bất kỳ một trong tám ngôn ngữ sau: C#, C ++, Java, C, Python, Ruby, Swift và JavaScript.you can use any one of the following eight languages: C#, C++, Java, C, Python, Ruby, Swift, and JavaScript.

Tôi có thể sử dụng Python trong cuộc phỏng vấn mã hóa khô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 cho cuộc phỏng vấn mã hóa thuật toán của bạn.Hầu hết các công ty sẽ cho phép bạn viết mã bằng ngôn ngữ bạn chọn.Ngoại lệ duy nhất tôi biết là Google.Họ cho phép các ứng cử viên của họ chỉ chọn từ Java, C ++, Python, Go hoặc JavaScript.They allow their candidates to pick from only Java, C++, Python, Go or JavaScript.

Ngôn ngữ nào là tốt nhất để mã hóa vòng?

Python..
Kotlin..

Chúng ta có thể sử dụng Python để mã hóa không?

Python là ngôn ngữ lập trình máy tính thường được sử dụng để xây dựng các trang web và phần mềm, tự động hóa các tác vụ và tiến hành phân tích dữ liệu.Python là một ngôn ngữ đa năng, có nghĩa là nó có thể được sử dụng để tạo ra nhiều chương trình khác nhau và không chuyên về bất kỳ vấn đề cụ thể nào.. Python is a general-purpose language, meaning it can be used to create a variety of different programs and isn't specialized for any specific problems.