Mempersiapkan diri Anda untuk tantangan kode


15

Hanya beberapa hari yang lalu saya menemukan Codility , dan saya mencoba tantangan mereka. Dan saya harus mengatakannya. Saya mendapatkan tangan saya dibelakang saya di atas piring. Saya tidak yakin apa masalahnya, tetapi saya akan menjilat luka saya dan menunggu solusinya keluar dan membandingkannya dengan luka saya sendiri. Sementara itu, saya ingin bersiap-siap untuk tantangan berikutnya jadi saya membaca posting blog mereka sebelumnya dan melihat bagaimana menyelesaikan masalah mereka sebelumnya. Ada banyak hal baru yang belum pernah saya dengar (pohon Cartesian, berbagai macam algoritma, dll.)

Jadi, bagaimana seseorang mempersiapkan diri untuk tantangan semacam itu (terutama O (x) kompleksitas waktu dan ruang). Apa yang harus saya baca untuk mempersiapkan tugas semacam itu?


Saya telah mempelajari haskell belakangan ini sebagian untuk memaksa otak saya untuk memutarbalikkan (itu akan memaksa ini) khusus untuk membantu menjadi lebih gesit dalam memikirkan solusi. Yang mengatakan, saya juga membaca The Algorithm Design Manual (ada pdf online gratis) dan salinan penjualan garasi dari Seni Pemrograman Komputer Vol 1 Algoritma Mendasar oleh Knuth (yang juga merupakan sumber rasa sakit otak yang serius) untuk tujuan yang sama .
Jimmy Hoffa

Jawaban:


3

bagaimana seseorang mempersiapkan diri untuk tantangan seperti itu (terutama O (x) kompleksitas waktu dan ruang). Apa yang harus saya baca untuk mempersiapkan tugas semacam itu?

Dengan bersiap-siap tentunya! Ini adalah masalah latihan dan meningkatkan kecepatan tentang bidang yang Anda rasa pendek. Alhamdulillah, sumber daya yang cukup bagus untuk menutupi begitu kekurangan informasi ada di internet dan Google adalah teman Anda.

Mengenai referensi saya akan menyarankan beberapa situs web yang memiliki pertanyaan tantangan programmer. Dari jenis pertanyaan itu Anda dapat menentukan kekurangan Anda dan belajar untuk itu.

Sumber daya untuk dilihat:


7

Satu-satunya hal yang dapat Anda lakukan untuk mempersiapkan diri menghadapi ujian semacam itu adalah berlatih. Berlatih banyak . Ada banyak sumber daya yang bagus untuk bantuan coders, seperti topcoder, codegolf, geeks untuk geeks, Programming Prexies, CodeKata, Project Euler dll.

Jika Anda mengalami masalah dengan struktur data, akan lebih baik jika Anda memoles konsep algoritma dan struktur data Anda. Tempat terbaik untuk itu adalah wikipedia, tetapi Anda juga dapat mencari kursus data algo tentang nptel, coursera, dll ...


Saya mencari lebih banyak sumber daya seperti buku, tetapi beberapa tautan Anda baru dan informatif.
Daniel Fath

1
@DanielFath: Membaca tentang itu membantu, tetapi pemecahan masalah adalah seni yang harus dipraktikkan jika Anda ingin menjadi ahli dalam hal itu. Dalam dunia menulis perangkat lunak, ada sejumlah besar masalah yang akan Anda lihat berulang kali. Pengalaman menyelesaikannya sebelum memberi Anda kemampuan untuk menemukan variasi baru dan dengan cepat menerapkan solusi yang baik.
Blrfl

Saya setuju dengan banyak praktik, saya hanya mengungkapkan keinginan untuk sumber daya yang lebih konkret , untuk mempertimbangkan pertanyaan diselesaikan. Saya membenarkan jawaban (heck saya sudah membesarkan semuanya).
Daniel Fath

4

Posting blog semi resmi tentang perekrutan Google merekomendasikan buku ini: Manual Desain Algoritma .

Ini sangat komprehensif dan ditulis dengan baik, dengan bagian 'referensi cepat' yang dapat banyak membantu dalam situasi Anda, setelah Anda cukup terbiasa dengan algoritma umum dan struktur data.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.