[Arşiv] Ticaretle ilgisi olmayan saf matematik, fizik, kimya vb. beyin jimnastiği bulmacaları - sayfa 584
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım 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
Sana bir sorun vereceğim.
Boyan, elbette, ancak görüşmelerde, bilginin apotheosis'i olarak, sıralama dizileri yuvarlanır))
yani sıralama sorunu
Birler, ikiler ve üçlerin rasgele sırada yerleştirildiği bir dizi N hücre vardır.
En uygun sıralama algoritmasını oluşturun.
Bir geçişte sayın, ikincisinde diziyi doldurun .
Tek geçişte:
Aynı boyuttaki dizinin boş bir kopyasını oluşturuyoruz, onu ikişerli olarak başlatıyoruz.
Dizinin başından gidiyoruz. 1 ile tanıştık - bir nüshaya yazıyoruz, baştan başlayarak, 3 - sondan başlayarak bir nüshaya yazıyoruz.
Kopya olmadan (aksi takdirde bir kopyayı doldurmanın ayrı bir geçiş olduğunu söyleyeceksiniz)
n=0, m=0
Dizinin başından gidiyoruz. 1 ile tanıştık - dizinin başlangıcından itibaren n'inci elemanla değiştiriyoruz, 1'e eşit değil (yapıma göre her zaman 2 olacak), n++, eğer 3 ile tanışırsak - onu sondan mth ile değiştiririz, değil 3'e eşittir, m++ ve eğer 1'i değiştirirsek, ilk bölümde belirtilen eylemleri gerçekleştiririz.
Kopya olmadan (aksi takdirde bir kopyayı doldurmanın ayrı bir geçiş olduğunu söyleyeceksiniz)
n=0, m=0
Dizinin başından gidiyoruz. 1 ile tanıştık - dizinin başlangıcından itibaren n'inci elemanla değiştiriyoruz, 1'e eşit değil (yapıma göre her zaman 2 olacak), n++, eğer 3 ile tanışırsak - onu sondan mth ile değiştiririz, değil 3'e eşittir, m++ ve eğer 1'i değiştirirsek, ilk bölümde belirtilen eylemleri gerçekleştiririz.
Kopya olmadan (aksi takdirde bir kopyayı doldurmanın ayrı bir geçiş olduğunu söyleyeceksiniz)
n=0, m=0
Dizinin başından gidiyoruz. 1 ile tanıştık - dizinin başlangıcından itibaren n'inci elemanla değiştiriyoruz, 1'e eşit değil (yapıma göre her zaman 2 olacak), n++, eğer 3 ile tanışırsak - onu m-inci elemanla değiştiririz sondan itibaren, 3'e eşit değil, m++ ve eğer 1'i değiştirirsek, ilk bölümde belirtilen eylemleri gerçekleştiririz.
Harika yol.
Geçiş sayısını azaltmak her zaman hızda bir artış sağlamaz.
A+B=...
Kopya olmadan (aksi takdirde bir kopyayı doldurmanın ayrı bir geçiş olduğunu söyleyeceksiniz)
n=0, m=0
Dizinin başından gidiyoruz. 1 ile tanıştık - dizinin başlangıcından itibaren n'inci elemanla değiştiriyoruz, 1'e eşit değil (yapıma göre her zaman 2 olacak), n++, eğer 3 ile tanışırsak - onu sondan mth ile değiştiririz, değil 3'e eşittir, m++ ve eğer 1'i değiştirirsek, ilk bölümde belirtilen eylemleri gerçekleştiririz.
İyi bir fikir.
Eh, optimallik kriteri belirlenmedi ...
Ayrıca geliştirme ve hata ayıklama süresi de eklerdim.
"Tek geçiş", son kritere göre açıkça kaybeder))))