Bence kısmı olduğu aşikar, oluşturulan sağlam bir algoritma için kod yazmak gerçekten çok kolay bir
Friv
Friv
Cumhuriyetimizin kurucusu Gazi Mustafa Kemal Atatürk'ü vefatının 88. yılında saygı ve özlemle anıyoruz.Gazi Mustafa Kemal Atatürk'ü saygı ve özlemle anıyoruz.Atatürk'ü saygı ve özlemle anıyoruz.
Bu yaptığın işlem permütasyon, bilesin :) kombinasyon; 10! / 5!*5! den = 252 çıkıyo :)__kadıköyRAP__ dedi: ↑Bunu yazmak için tekrar girmiştim konuya :)
Adam haklı bence de bu şekilde yap. 10'un 5'li kombinasyonu 10*9*8*7*6 = 30240 deneme yapacak program tabi nası yaptırırsın sana kalmış :D
yok üstadım gücenmedim, ama 10 elemanlı bir sorudan yola çıkılmış örnek durum için en uygun ve verimli çözüm şu an deneme yanlma algoritması gibi gözüküyor. :Dsithlord dedi: ↑:) Bastan soyleyeyim, kimseyi gucendirmek gibi bir niyetim yok, eger gucendirdiysem ozur dilerim. Ozellikle seni kastederek soylememistim zaten, sanirim bahsettigin yasa moore yasasi (http://tr.wikipedia.org/wiki/Moore_Yasas%C4%B1) ama o bakin bilgisayarlar ileride cok hizlanacak algoritmalarin ne kadar verimli oldugu cok onemli degil manasinda soylenmis bir cumle degil diye dusunuyorum.
Benim demek istedigim algoritma sorularinin tamamina yakini zaten brute force denen , tum ihtimalleri deneyerek bulma yontemiyle cozulebilir ama aranan cevap bu degildir. Yok 10 elemanli soru icin benim cozumum dogru, milyonlarca eleman icinde bekleyin cok hizil iclemciler cikinca cozersiniz demekte bir secenek tabi.
üstadım yapma, bağımlılığımı depreştirmee. :DeSa dedi: ↑Bilmeyen olabilir; ufak bir bilgilendirme yapayım.
YSA (Yapay Sinir Ağları) : İnsan beyninin bilgiyi işleme sistemininden faydalanarak geliştirilmiş uygulamalar ve bilgi işlem teknolojileridir.
Daha ayrıntılı bilgi için : http://tr.wikipedia.org/wiki/Yapay_sinir_a%C4%9Flar%C4%B1
Bu sonucunuz yanlış çıkmış. Algoritmanızı detaylı olarak inceleyemedim kusura bakmayın lütfen, sadece bir göz gezdirdim ve dikkatimi çekti. 401'in 2. gruba, 400'ün ise 1. grupta olması gerekiyor, en az fark için..MKOKSAL dedi: ↑sonuç :
1.grup 2.grup
401 400
380 390
100 10
2 8
1 3
__L__ dedi: ↑Bu sonucunuz yanlış çıkmış. Algoritmanızı detaylı olarak inceleyemedim kusura bakmayın lütfen, sadece bir göz gezdirdim ve dikkatimi çekti. 401'in 2. gruba, 400'ün ise 1. grupta olması gerekiyor, en az fark için..
| Doğru tespit..Algoritma bu şekliyle istenileni karşılamıyor..Son olarak iki grup arasındaki farkı kapatmak için yer değiştirme yapmamız gerekecek. | ||||||||||||||
| Fark=Toplam1-Toplam2 olsun..Yer değiştirme için toplamı büyük olan gruptan başlayalım ve 1. elemandan başlayarak diğer grup elemanları ile işlem yapacağız.. | ||||||||||||||
| İki grup arasındaki farkı en büyük olan 2 sayının gruplarını değiştireceğiz.. | ||||||||||||||
| 1. grup | 2. grup | |||||||||||||
| 401 | 400 | |||||||||||||
| 380 | 390 | |||||||||||||
| 100 | 10 | |||||||||||||
| 2 | 8 | |||||||||||||
| 1 | 3 | |||||||||||||
| TOPLAM1 | TOPLAM2 | |||||||||||||
| 884 | 811 | |||||||||||||
| 1) | 884-811=73 | 401-400=1 | 1*2=2<73 | |||||||||||
| 401-390=11 | 11*2<73 | |||||||||||||
| 401-10=391 | 391*2>73 olduğundan en büyük fark 401 ve 390 yer değiştirilir. | |||||||||||||
| 1. grup | 2. grup | |||||||||||||
| 390 | 400 | |||||||||||||
| 380 | 401 | |||||||||||||
| 100 | 10 | |||||||||||||
| 2 | 8 | |||||||||||||
| 1 | 3 | |||||||||||||
| TOPLAM1 | TOPLAM2 | |||||||||||||
| 873 | 822 | |||||||||||||
| 2) | 873-822=51 | 390,380,100,2,1 sayıları diğer grupla karşılaştırılır ve 51 den küçük bir fark bulunamadığından işlem tamamlanmıştır.. |
Tebrik ederim gerçekten, çözüm yolunuz çok başarılı. Nerede çalıştığınızı ve ne kadarlık bir iş tecrübeniz var öğrenebilir miyim, lütfedip söylerseniz?MKOKSAL dedi: ↑
Doğru tespit..Algoritma bu şekliyle istenileni karşılamıyor..Son olarak iki grup arasındaki farkı kapatmak için yer değiştirme yapmamız gerekecek. Fark=Toplam1-Toplam2 olsun..Yer değiştirme için toplamı büyük olan gruptan başlayalım ve 1. elemandan başlayarak diğer grup elemanları ile işlem yapacağız.. İki grup arasındaki farkı en büyük olan 2 sayının gruplarını değiştireceğiz.
ancak ilgili ödevin teslim tarihi biraz daha erken bir zamanda olabilir :)LeaveNhA dedi: ↑o lafı eden benim, "işi ne hesaplasın dursun"... :D
Bir teori var, adını, yada yaratıcısını bilmiyorum.
Bilgisayar sistemlerinin hızlarının nihayi sonucu ile ilgili, her yıl bilmem kaç kat artıyormuş. (acayip uykuluyum, rakam falan yok gözümde hatırlayamıyorum)
Benim bir yazılımcı olarak fikrim, zaman ve bu birim zamanda belirli bir miktarda bilgiyi işleyebilen insan beyni hemen hemen aynı kalıcak fakat milyarlarca kat hızlı işlemciler var olucak.
öyle bir dünyada nihayi sorun, algoritmanın hızı değil, nitelik yapısı mümkünlüğü işaret eden varlık sınırları içinde ve somut sonuca götüren kod yapısının dil sınırlarına bağlı kalınarak tasarımı ve yazımıdır. ;)
yani 10000000000000 değil 1000000000000000000000000000000'de olsa o rakam, bir gün gelicek ve sadece yukarıda verdiğim yerine koyma algoritmasıyla bile sonuca gidilicek.
şimdilik 10 rakam iyidir, candır, teknoloji ilerledikçe rakamı arttırırız.
o vakte kadar da ne olur sonuç elde edilen şeyin verimliliğinden kuşku duymayın, bu paranoya başlangıcı semptomudur zaten. :D
hikayenin can alıcı kısmıda bu, zamanlama sıkıntısı... :)annttiigs dedi: ↑ancak ilgili ödevin teslim tarihi biraz daha erken bir zamanda olabilir :)
Çerez tercihleriniz Sitenin çalışması için zorunlu çerezler kullanılır. Ölçüm ve reklam çerezleri yalnız onay verirseniz çalışır. Ayrıntılar