Kodlamanın temellerini(koşullu ifadeler, döngüler, matrisler vb.) öğrendikten sonra ikinci aşama için ihtiyacınız olan konu listesi aşağıdadır. Resmi bir liste değildir.

Açıkcası müthiş fazla sayıda algoritma yok, hepsinin teorisini öğrenmeniz çok vaktinizi almıyacaktır. Ama bu algoritmaları soru çözümünde kullanmak ve mantığının kafanıza tam oturması oldukça vaktinizi alıcaktır.

İkinci aşama çalışırken yapmanız gereken iki türlü çalışma biçimi vardır.

  1. Yeni Konu öğrenme
  2. Pratik Yapma

Yeni konu/algoritma öğrenme

<aside> ⛳ Algoritmayı öğrenin. Algoritmanın kodunu, koduna bakarak ancak hiçbir kısmını kopyalamadan yazın.

Algoritmayı pekiştirmek için, sonraki günlerde bu algoritmayı kullanarak 2-3 soru daha çözün.

</aside>

Yeni konu/algoritma öğrenecekseniz, öncelikle o algoritma için yeterli alt yapıya sahip olduğunuza emin olun.

Mesela ikinci aşamada madalya almak için segment tree kodlamanıza gerek bile yok. Daha shortest path benzeri bir soruyu çözemiyorken, segment tree öğrenmenize pek gerek yok. Eğer kaliteli bir sınav ise, zaten sadece segment treenin nasıl kodlandığını bilmek ile o sorunun tamamını çözmeniz büyük ihtimalle oldukça zor olucaktır.(yani direkt o algoritmanın kodlanması size sorulmadığı taktirde, ki sadece kodlama becerisi sorulan sorular oldukça kalitesiz bir soru olur.)

Eğer bir algoritma öğrenicekseniz, ilk önce sakince algoritmanın neyi çözdüğünü öğrenin. Bir video veya kitap yardımıyla. Algoritmayı öğrenmeye çalışın. Ardından koduna baka baka, hiçbir kısmı kopyalamadan algoritmanın kodunu yazın. Yazdığınız kod doğru bir şekilde çalıştıktan sonra, ve kodun çalışma biçimini tamamiyle anladıktan sonra. Bu algoritma ile çözülebilecek benzer kolay bir soruya göz atın. Artık bu soruyu sıfırdan kendi başınıza çözmeye çalışın, algoritmayı yazarken zorlandığınız yerlerde tekrardan önceki yazdığınız koda bakabilirsiniz. Ardından sonraki günlerde bu algoritma ile çözülen 2-3 tane daha soru bulup pekiştirin.

Konu öğrenmek için kullanabileceğiniz kaynaklar:

Konu Listesi

,