Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Bu nedenle, sipariş kapatılırsa, diziden "silinmesi" gerekir. Bu gibi durumlarda, diziyi "kendisine" kopyalayıp boyutu birer birer küçültmeyi kullandım.
Bu durumda -1 dizisine var olmayan bir bilet yazdım ve tüm siparişlerin kapanmasını bekledim ve tüm diziyi sildim (Dizi boyutunu =1 olarak ayarladım).
Bu yaklaşımla , bilet dizisinin bir öğesi ( sipariş yoksa) yalnızca bir koşulla kontrol edilir: if(ArrayOfTicket[i] > 0) .....
IMHO, diziyi sürekli olarak "sallamaktan" çok daha hızlı
Bu durumda -1 dizisine var olmayan bir bilet yazdım ve tüm siparişlerin kapanmasını bekledim ve tüm diziyi sildim (Dizi boyutunu =1 olarak ayarladım).
Bu yaklaşımla , bilet dizisinin bir öğesi ( sipariş yoksa) yalnızca bir koşulla kontrol edilir: if(ArrayOfTicket[i] > 0) .....
IMHO, diziyi sürekli olarak "sallamaktan" çok daha hızlı
Hiçbir şey anlamadım... Ve ne fark eder ki, eleman eleman silmek ya da var olmayan siparişlerin indekslerini kontrol etmek... dizi yine de bozuluyor...
Genel olarak bugün haberlerde dedikleri gibi lezzetin patentini almak mümkün değil. Keçeli kalemler sadece renk olarak farklıdır, ancak hepsinin tadı aynıdır.
Hiçbir şey anlamadım... Ve ne fark eder ki, eleman eleman silmek ya da var olmayan siparişlerin indekslerini kontrol etmek... dizi yine de bozuluyor...
Genel olarak bugün haberlerde dedikleri gibi lezzetin patentini almak mümkün değil. Keçeli kalemler sadece renk olarak farklıdır, ancak hepsinin tadı aynıdır.
bir öğeyi silmek, dizinin kalan öğelerini kopyalamak anlamına gelir, dizinin öğelerini silmiyorum, ancak var olmayan öğeleri (biletleri) -1 değeriyle işaretliyorum ve piyasa emri olmadığında bilet dizisini siliyorum
Keçeli kalemlere gelince, kesinlikle öyledir, göreve bağlıdır, prensip olarak, optimize ederken genellikle 2 çözüm vardır:
- veya algoritmanın karmaşıklığını ekleyin, ancak bellekten tasarruf edin ve PC bilgi işlem kaynaklarını boşa harcayın
- veya algoritmayı basitleştirir ve bilgi işlem kaynaklarından tasarruf ederiz, ancak bellek tüketiriz
Sağlama toplamı doğru kabul edilmez, dizide 0 varsa bir hata olabilir
Nikitin'in varyantı sadece böyle bir hata üzerinde çalışıyor.
Sağlama toplamı doğru kabul edilmez, dizide 0 varsa bir hata olabilir
Nikitin'in varyantı sadece böyle bir hata üzerinde çalışıyor.
Evet haklısın. Ek olarak sadece Nikitin sıfır element attı. Bu yüzden kodu yanlış görünüyordu. Aslında, başlangıçta sizin tarafınızdan belirlenen görev çözüldü.
İçinde boş öğeler olup olmadığını belgelerseniz, sonuç aynıdır:
Şimdi sağlama toplamının daha önce hesaba katmadığı öğelerin sırasını dikkate aldığını tekrar ediyorum.
Evet haklısın. Ek olarak sadece Nikitin sıfır element attı. Bu yüzden kodu yanlış görünüyordu. Aslında, başlangıçta sizin tarafınızdan belirlenen görev çözüldü.
İçinde boş öğeler olup olmadığını belgelerseniz, sonuç aynıdır:
Şimdi sağlama toplamının daha önce hesaba katmadığı öğelerin sırasını dikkate aldığını tekrar ediyorum.
Bu arada eğer sıralama çok önemliyse benim versiyonuma en sonda ArraySort ekleyebilirsiniz , aynı zamanda genel olarak ArraySort'un ne kadar etkili olduğuna bakın.
Şimdi cevabını bulamadığım başka bir soruyla ilgileniyorum.
Belki birisi neden böyle bir seçeneğin Kuznetsov'un kodundan açıklayabilir:
bunun iki katından daha hızlı çalışır ve tam olarak aynı şeyi yapar:
Derleyicinin harikaları nelerdir?
Gerçekten böyle bir tasarım için:
while (arr[i]!=x && i<j) i++;
derleyici, işlemci için bazı özel montajcı arama talimatları buluyor mu?
Modern işlemci talimatlarında güçlü olan var mı?
Bu arada eğer sıralama çok önemliyse benim versiyonuma en sonda ArraySort ekleyebilirsiniz, aynı zamanda genel olarak ArraySort'un ne kadar etkili olduğuna bakın.
Onunla denedim. Oldukça maliyetli bir özellik. Sonradan atmak daha kolay olsa da. Tüm gerekli olanlar arka arkaya gider.
Evet haklısın. Ek olarak sadece Nikitin sıfır element attı. Bu yüzden kodu yanlış görünüyordu. Aslında, başlangıçta sizin tarafınızdan belirlenen görev çözüldü.
İçinde boş öğeler olup olmadığını belgelerseniz, sonuç aynıdır:
:
bunun iki katından daha hızlı çalışır ve tam olarak aynı şeyi yapar:
optimize edici işe yaramaz - karşılaştırmalar 2 kattan azdır ..