Selamlar. Mülakat deneyimlerime bir süre ara vermiştim. Yakın zamanda Linkedin üzerinden gelen bir teklifle tekrar mülakata girme şansım oldu. Aslında tam bir mülakat değildi. Başta 2 coding challenge atıldı. Klasik algoritma sorularındandı bu challengelar. Bu iki challenge için toplam 1 saat verildi. Challenge Coderbyte üzerinde yapıldı. Sorulardan biri Seating Students diğeri ise Print matrix in spiral order idi.
Birinci soru yaklaşık 25 dakikamı aldı ve çok da zor değildi açıkçası. Bu kadar uzun sürmesi baştan adam akıllı düşünüp bir mantık oturtmadan dümdüz kodu yazmaya çalışmaktan oldu sanırım. İkinci soru için 35 dakikam kalmıştı ama ne yazık ki başta kurduğum mantık ihtiyaçlarımı karşılamadı. Sonrasında daha düzgün bir mantıkla yazmaya çalıştım ama onda da vaktim kalmadı. Her zaman olduğu gibi challenge sonrası iş işten geçtikten sonra 10 dakika içerisinde kodu yazabildim ama bir anlamı yoktu tabii. 2 gün sonra bir mail aldım. %50 başarılı olduğumu ancak %100 beklediklerini yazmışlar. Coding challenge sırasında teknik bir sorunla karşılaştıysam tekrarını yapabileceklerini söylediler ama herhangi bir sorunla karşılaşmadığımdan, tamamen kendi hatam yüzünden yapamadığımdan “evet ya bi sorun oldu da beni tekrar alır mısınız” demeye yüzüm yoktu açıkçası o yüzden teşekkür edip daha yeni açılmış olan defteri kapattım.
Bu algoritma sorularında kendimi hep yetersiz görüyorum. Soru inanılmaz basit olsa da üniversite 1.sınıftan kalma travmamla “ben algoritmada iyi değilim ki ya” düşüncesiyle biraz kendimi tribe sokuyorum. Mülakatlar sonrasında çözebilmiş olmamı asla hesaba katamıyorum. Öncelikle bu sorunu çözmekle başlayacağım sanırım.
Sonraki mülakatlarda görüşmek üzere hoşçakalın.
edit: Sorular görünmüyormuş.
Seating students sorusu:
The function SeatingStudents(arr) read the array of integers stored in arr which will be in the
following format: [K, r1, r2, r3, ...] where K represents the number of desks in a classroom,
and the rest of the integers in the array will be in sorted order and will represent the desks
that are already occupied. All of the desks will be arranged in 2 columns,
where desk #1 is at the top left, desk #2 is at the top right, desk #3 is below #1, desk #4 is below #2, etc.
Your program should return the number of ways 2 students can be seated next to each other.
This means 1 student is on the left and 1 student on the right, or 1 student is directly above or below the other student.
Print matrix in spiral order:
The input for this problem will be a matrix, or multidimensional array, which will be represented by N arrays each of N length, and your goal is to print the matrix in a spiral order. For example, if the input is:
[[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
then this matrix should be printed out in a list like so:
[1, 2, 3, 6, 9, 8, 7, 4, 5]
The spiral begins at the top left of the matrix and loops around it towards the center in a clockwise pattern.