Algoritma programlamada çok önemli bir yere sahiptir. Eğer bir programın algoritmasını kurarsanız, o programı yazmanız zor olmayacaktır. Bu yüzden algoritma mantığı geliştirmek yazılımla uğraşan bir kişi için oldukça önemli ve üzerinde durulması gereken bir konudur.
Algoritma Nedir?
Algoritma, belli bir problemi çözmek veya belirli bir amaca ulaşmak için tasarlanan yoldur.
Peki algoritma mantığı geliştirmek için neler yapmalısınız?
Algoritma mantığınızı geliştirmek için yapabileceğiniz en iyi yöntemlerden biri de bol bol problem çözmektir. Bu yüzden sizin için en popüler “code challenge” sitelerinden 5 tanesini derledik. Burada verilen soruları çözerek programlamada daha iyi yerlere gelebilirsiniz.
1 – Project Euler
Project Euler belki de en çok bilinen challenge sitelerinden biridir. Ağırlıklı olarak matematikle ilgili algoritma soruları bulunur.
Site içerisinde sorular kolaydan zora doğru sıralanır.
Sitede şu an 634 adet soru bulunmaktadır.
Sitede soruları çözerken kodları online editör üzerinden değil kendi bilgisayarınız üzerinden yazmanız gerekiyor. Ardından bulduğunuz cevabı girerek cevabın doğruluğunu kontrol edebilirsiniz.
Soruları istediğiniz dil üzerinden çözebilirsiniz.
2 – Code Wars
Code Wars sitesi bize soruları çözmek için bir online editör sağlıyor. 20’den fazla dili destekleyen editör üzerinden verilen problemleri çözmek için gerekli kodları yazabilirsiniz.
Diğer kullanıcıların çözümlerini görüntüleyebilirsiniz, sorular hakkında tartışabilirsiniz.
Sorular zorluk seviyelerine göre ayrılmıştır. İstediğiniz soruyu seçerek çözmeye çalışabilirsiniz. Soruları çözdükçe puan kazanıyor ve seviye atlıyorsunuz.
3 – HackerRank
HackerRank; algoritma, matematik, SQL, fonksiyonel programlama, yapay zeka ve daha fazlası konularda yoğunlaşmaktadır.
HackerRank tarafından sağlanan online editör üzerinden kodlarınızı yazabilirsiniz.
Her soru için tartışma ve liderlik sıralaması bulunuyor.
Ayrıca HackerRank kullanıcılarına firma sponsorlu soruları çözerek iş başvurularında bulunma imkanı tanıyor.
4 – Coderyte
Coderbyte, içerisinde 200’den fazla soru bulunduruyor.
Soruları çözmek için 10 farklı programlama dilini destekleyen bir online editör kullanabiliyorsunuz.
Site içerisinde 80,000’den fazla kullanıcı çözümüyle beraber resmi çözümler de yer almaktadır.
Ayrıca site içerisinde soruların yanında; algoritma ve veri yapıları ( data structures), web geliştirme, cooding bootcamp hazırlık kursları bulunmaktadır.
Coderbyte, içerdiği mülakat hazırlık sorularından dolayı en iyi “coding bootcamp”leri tarafından önerilmektedir.
5 – TopCoder
Önceki sitelerimizde olduğu gibi TopCoder da online editör içeriyor. Bu editörü kullanarak verilen soruları çözebilirsiniz.
Tek Raunt Karşılaşmaları (Single Round Matches) ayda birkaç defa düzenlenmektedir. Bu karşılaşmalarda amaç rakiplere karşı en hızlı ve en yüksek skor ile soruları çözmektir.
TopCoder’da yer alan yüksek puanlı kullanıcılar gerçekten iyi programcılardır.
En yüksek puanlı kullanıcı Petr Mitrichev , Algorithms Weekly by Petr Mitrichev isimli bloğunda kod yarışmaları, algoritma, matematik ve daha fazlası hakkında yazılar yazmaktadır.
Kod örnekleri ve proje fikirleri
Ayrıca sitemizde C, Python ve Java programlama dilleri ile ilgili çeşitli kodlara göz atabilirsiniz.
Sitemizde bulunan Python Yeni Başlayanlar İçin Örnek Projeler yazımıza giderek Python diliyle yapabileceğiniz çeşitli proje fikirleri bulabilirsiniz.
Sitemizde bulunan Java Yeni Başlayanlar İçin Örnek Projeler yazımıza giderek Java diliyle yapabileceğiniz çeşitli proje fikirleri bulabilirsiniz.