Sadece küçük bir yeniden düzenleme ("Çünkü dünyada bu kadar güzel olamazsın..."):
#define BENCHMARK_TEST(function, test_name) \
ArrayCopy (arr2,arr); \
t= GetMicrosecondCount (); \
N= ##function(arr2,Value); \
t= GetMicrosecondCount ()-t; \
printf ( "вариант %-12s: Контрольная сумма = %f; элементов - %d; время выполнения - %6d микросекунд" , test_name, ControlSumm(arr2), N, t);
voidOnStart ()
{
srand ( 1 );
int N;
ulong t;
int Value= rand ()% 1000 ; // значение, которое нужно удалить из массиваint arr[]; // исходный массивint arr2[]; // создаем еще один массив для теста и копируем в него исходный массивArrayResize (arr, 1000000 );
for ( int i= 0 ; i< 1000000 ;i++){
arr[i]= rand ()% 1000 ; //генерируем исходный массив случайными значениями от 0 до 1000
}
BENCHMARK_TEST(ArrayDeleteVal1, "Pastushak" );
BENCHMARK_TEST(arrayFilter, "Korotky" );
BENCHMARK_TEST(DelEl2, "Fedoseev" );
BENCHMARK_TEST(ArrayDeleteVal, "Semko" );
BENCHMARK_TEST(ArrayModify, "Pavlov" );
BENCHMARK_TEST(arrayFilter2, "Nikitin" );
BENCHMARK_TEST(ArrayDelV, "Vladimir" );
BENCHMARK_TEST(PeterArray, "Peter" );
BENCHMARK_TEST(arrayFilter3, "Kuznetsov" );
}
//..............................................
Sonuç:
2018.11 . 1501 : 11 : 13.670 Test (EURUSD,H1) вариант Pastushak : Контрольная сумма = 7225.757267 ; элементов - 998994 ; время выполнения - 127587 микросекунд
2018.11 . 1501 : 11 : 13.675 Test (EURUSD,H1) вариант Korotky : Контрольная сумма = 7225.757267 ; элементов - 998994 ; время выполнения - 2530 микросекунд
2018.11 . 1501 : 11 : 13.679 Test (EURUSD,H1) вариант Fedoseev : Контрольная сумма = 7225.757267 ; элементов - 998994 ; время выполнения - 1995 микросекунд
2018.11 . 1501 : 11 : 13.681 Test (EURUSD,H1) вариант Semko : Контрольная сумма = 7225.757267 ; элементов - 998994 ; время выполнения - 854 микросекунд
2018.11 . 1501 : 11 : 13.686 Test (EURUSD,H1) вариант Pavlov : Контрольная сумма = 7225.757267 ; элементов - 998994 ; время выполнения - 3239 микросекунд
2018.11 . 1501 : 11 : 13.692 Test (EURUSD,H1) вариант Nikitin : Контрольная сумма = 7225.757267 ; элементов - 998994 ; время выполнения - 3812 микросекунд
2018.11 . 1501 : 11 : 13.698 Test (EURUSD,H1) вариант Vladimir : Контрольная сумма = 7225.757267 ; элементов - 998994 ; время выполнения - 4037 микросекунд
2018.11 . 1501 : 11 : 13.707 Test (EURUSD,H1) вариант Peter : Контрольная сумма = 7225.757267 ; элементов - 998994 ; время выполнения - 7855 микросекунд
2018.11 . 1501 : 11 : 13.710 Test (EURUSD,H1) вариант Kuznetsov : Контрольная сумма = 7224.813498 ; элементов - 998994 ; время выполнения - 744 микросекунд
@Maxim Kuznetsov ayrı bir kategoriye taşındı, yine de farklı işlevler
Hata içeren testleri yorumladım (Semko ve Pavlov).
Sürümümü ekledim
PS Evet ve şablonların kaldırılması gerekiyor, bu aynı zamanda çift karşılaştırma yaparken olası bir hatadır.
Dizinin son iki öğesini Değer'e eşit yaptı. Semko'nun hatası yok. Hangi durumda hataları olduğunu gösterin. Aksi halde lideri kovmak adil değil, sportmence değil.
Normalizasyondan kaynaklanan double ile ilgili hatalar nelerdir? Yani bir double dizi ile çalışıyorsanız, diziye normalleştirilmiş veri eklemek için kendinize dikkat etmeniz gerekir.
Dizinin son iki öğesini Değer'e eşit yaptı. Semko'nun hatası yok. Hangi durumda hataları olduğunu gösterin. Aksi halde lideri kovmak adil değil, sportmence değil.
Normalizasyondan kaynaklanan double ile ilgili hatalar nelerdir? Yani bir double dizi ile çalışıyorsanız, diziye normalleştirilmiş veri eklemek için kendinize dikkat etmeniz gerekir.
Kodda yorum yaptım, muhtemelen fark etmediniz. Dizinin son elemanı silme koşulunun altına düşerse, yani Değer'e eşitse hata
Sırf kimse bir hata ile kopyala-yapıştır yapmasın diye koddan atmadım :). Bence Nikolai kodunu düzeltip kendisi geri dönecek :)
Ve şablonlar pahasına: fonksiyon gerçek sayıların yanlış bir karşılaştırmasına sahip olduğundan veya daha doğrusu bunun için tasarlanmadığından, çift geçerken bir hata olacaktır, bu nedenle, şablonu yerleştirmeden önce yapmak gerekiyordu. işlevin her türde düzgün çalışacağından emin olun.
Kodda yorum yaptım, muhtemelen fark etmediniz. Dizinin son elemanı silme koşulunun altına düşerse, yani Değer'e eşitse hata
Sırf kimse bir hata ile kopyala-yapıştır yapmasın diye koddan atmadım :). Bence Nikolai kodunu düzeltip kendisi geri dönecek :)
Ve şablonlar pahasına: fonksiyon gerçek sayıların yanlış bir karşılaştırmasına sahip olduğundan veya daha doğrusu bunun için tasarlanmadığından, çift geçerken bir hata olacaktır, bu nedenle, şablonu yerleştirmeden önce yapmak gerekiyordu. işlevin her türde düzgün çalışacağından emin olun.
Neye dikkat edilmeliydi? İşte burada: " Son öğelerden biri veya daha fazlası koşulla eşleşirse dizi bozulur"? Bunun hakkında yukarıda yazdım, işe yaramadı. Ekran görüntüsünden de görebileceğiniz gibi, durum böyle değil. Az miktarda veri ile bir hata oluşuyor gibi görünüyor.
Çift ile hata ne olacak? Neden hepsi aniden? Dizide hangi veriler var ve çalışacak. Bir şeyin düzgün çalışması gerekiyorsa bir diziye yerleştirmeden önce normalleştirme yapmanız gerekir. Ancak normalleştirmeyi araya sokma işlevinde değil. İşlev, şablona mükemmel şekilde uyar ve doğru kullanırsanız double ile iyi çalışır.
Herkesin bir anda çifte problemle meşgul olması çok iyi ama konuya kafanız ile yaklaşmanız gerekiyor.
Neye dikkat edilmeliydi? İşte burada: " Son öğelerden biri veya daha fazlası koşulla eşleşirse dizi bozulur"? Bunun hakkında yukarıda yazdım, işe yaramadı. Ekran görüntüsünden de görebileceğiniz gibi, durum böyle değil. Az miktarda veri ile bir hata oluşuyor gibi görünüyor.
Çift ile hata ne olacak? Neden hepsi aniden? Dizide hangi veriler var ve işe yarayacak. Eğer düzgün çalışması gerekiyorsa bir diziye yerleştirmeden önce normalleştirme yapmak gerekir. Ancak sadece normalleşmeyi araya sokma işlevinde değil. İşlev, şablona mükemmel bir şekilde uyar ve doğru kullanırsanız çift ile harika çalışır.
Herkesin bir anda çifte problemle meşgul olması çok iyi ama konuya kafanız ile yaklaşmanız gerekiyor.
Fonksiyonun nasıl çalışması gerektiği konusunda farklı görüşlere sahibiz.Fonksiyon Afrika'da da bir fonksiyondur ve herhangi bir veri hazırlığı olmadan çalışması gerekir, her şey içeride çalışmalı.Kopyala-yapıştır yapan kişi veri hazırlama hakkında hiçbir şey bilmiyor ve bilmemeli.
PS Evet, aslında kimse ilgilenmiyor, bir şekilde mor hissediyorum. Az önce buradaki şablonların bir köpeğin 5. ayağı gibi olduğunu ve olası bir hata olabileceğini yazdım.
Fonksiyonun nasıl çalışması gerektiği konusunda farklı görüşlere sahibiz.Fonksiyon Afrika'da da bir fonksiyondur ve herhangi bir veri hazırlığı olmadan çalışması gerekir, her şey içeride çalışmalı.Kopyala-yapıştır yapan kişi veri hazırlama hakkında hiçbir şey bilmiyor ve bilmemeli.
optimize edici işe yaramaz - karşılaştırmalar 2 kattan azdır ..
Sadece küçük bir yeniden düzenleme ("Çünkü dünyada bu kadar güzel olamazsın..."):
Sonuç:
Sadece küçük bir yeniden düzenleme ("Çünkü dünyada bu kadar güzel olamazsın..."):
Biraz daha yüksek soruldu - orijinal diziyi bir dizi olarak koymaya çalışın. ArraySetAsSeries (..,doğru);
oldukça güncel bir soru - hangi hilelerin serilerle hiç çalışmadığına ve hangilerinin aniden yavaşladığına bakmak için
dizi filtreleme ile düzeltin, diziyle ilgili soru daha pratik
Sadece küçük bir yeniden düzenleme ("Çünkü dünyada bu kadar güzel olamazsın..."):
Yararlı bir kaliteli ders için teşekkürler Sergey. :)
@Maxim Kuznetsov ayrı bir kategoriye taşındı, yine de farklı işlevler
Hata içeren testleri yorumladım (Semko ve Pavlov).
Sürümümü ekledim
PS Evet ve şablonların kaldırılması gerekiyor, bu aynı zamanda çift karşılaştırma yaparken olası bir hatadır.
@Maxim Kuznetsov ayrı bir kategoriye taşındı, yine de farklı işlevler
Hata içeren testleri yorumladım (Semko ve Pavlov).
Sürümümü ekledim
PS Evet ve şablonların kaldırılması gerekiyor, bu aynı zamanda çift karşılaştırma yaparken olası bir hatadır.
Dizinin son iki öğesini Değer'e eşit yaptı. Semko'nun hatası yok. Hangi durumda hataları olduğunu gösterin. Aksi halde lideri kovmak adil değil, sportmence değil.
Normalizasyondan kaynaklanan double ile ilgili hatalar nelerdir? Yani bir double dizi ile çalışıyorsanız, diziye normalleştirilmiş veri eklemek için kendinize dikkat etmeniz gerekir.
Dizinin son iki öğesini Değer'e eşit yaptı. Semko'nun hatası yok. Hangi durumda hataları olduğunu gösterin. Aksi halde lideri kovmak adil değil, sportmence değil.
Normalizasyondan kaynaklanan double ile ilgili hatalar nelerdir? Yani bir double dizi ile çalışıyorsanız, diziye normalleştirilmiş veri eklemek için kendinize dikkat etmeniz gerekir.
Kodda yorum yaptım, muhtemelen fark etmediniz. Dizinin son elemanı silme koşulunun altına düşerse, yani Değer'e eşitse hata
Sırf kimse bir hata ile kopyala-yapıştır yapmasın diye koddan atmadım :). Bence Nikolai kodunu düzeltip kendisi geri dönecek :)
Ve şablonlar pahasına: fonksiyon gerçek sayıların yanlış bir karşılaştırmasına sahip olduğundan veya daha doğrusu bunun için tasarlanmadığından, çift geçerken bir hata olacaktır, bu nedenle, şablonu yerleştirmeden önce yapmak gerekiyordu. işlevin her türde düzgün çalışacağından emin olun.
Kodda yorum yaptım, muhtemelen fark etmediniz. Dizinin son elemanı silme koşulunun altına düşerse, yani Değer'e eşitse hata
Sırf kimse bir hata ile kopyala-yapıştır yapmasın diye koddan atmadım :). Bence Nikolai kodunu düzeltip kendisi geri dönecek :)
Ve şablonlar pahasına: fonksiyon gerçek sayıların yanlış bir karşılaştırmasına sahip olduğundan veya daha doğrusu bunun için tasarlanmadığından, çift geçerken bir hata olacaktır, bu nedenle, şablonu yerleştirmeden önce yapmak gerekiyordu. işlevin her türde düzgün çalışacağından emin olun.
Neye dikkat edilmeliydi? İşte burada: " Son öğelerden biri veya daha fazlası koşulla eşleşirse dizi bozulur"? Bunun hakkında yukarıda yazdım, işe yaramadı. Ekran görüntüsünden de görebileceğiniz gibi, durum böyle değil. Az miktarda veri ile bir hata oluşuyor gibi görünüyor.
Çift ile hata ne olacak? Neden hepsi aniden? Dizide hangi veriler var ve çalışacak. Bir şeyin düzgün çalışması gerekiyorsa bir diziye yerleştirmeden önce normalleştirme yapmanız gerekir. Ancak normalleştirmeyi araya sokma işlevinde değil. İşlev, şablona mükemmel şekilde uyar ve doğru kullanırsanız double ile iyi çalışır.
Herkesin bir anda çifte problemle meşgul olması çok iyi ama konuya kafanız ile yaklaşmanız gerekiyor.
Neye dikkat edilmeliydi? İşte burada: " Son öğelerden biri veya daha fazlası koşulla eşleşirse dizi bozulur"? Bunun hakkında yukarıda yazdım, işe yaramadı. Ekran görüntüsünden de görebileceğiniz gibi, durum böyle değil. Az miktarda veri ile bir hata oluşuyor gibi görünüyor.
Çift ile hata ne olacak? Neden hepsi aniden? Dizide hangi veriler var ve işe yarayacak. Eğer düzgün çalışması gerekiyorsa bir diziye yerleştirmeden önce normalleştirme yapmak gerekir. Ancak sadece normalleşmeyi araya sokma işlevinde değil. İşlev, şablona mükemmel bir şekilde uyar ve doğru kullanırsanız çift ile harika çalışır.
Herkesin bir anda çifte problemle meşgul olması çok iyi ama konuya kafanız ile yaklaşmanız gerekiyor.
Fonksiyonun nasıl çalışması gerektiği konusunda farklı görüşlere sahibiz.Fonksiyon Afrika'da da bir fonksiyondur ve herhangi bir veri hazırlığı olmadan çalışması gerekir, her şey içeride çalışmalı.Kopyala-yapıştır yapan kişi veri hazırlama hakkında hiçbir şey bilmiyor ve bilmemeli.
PS Evet, aslında kimse ilgilenmiyor, bir şekilde mor hissediyorum. Az önce buradaki şablonların bir köpeğin 5. ayağı gibi olduğunu ve olası bir hata olabileceğini yazdım.
Fonksiyonun nasıl çalışması gerektiği konusunda farklı görüşlere sahibiz.Fonksiyon Afrika'da da bir fonksiyondur ve herhangi bir veri hazırlığı olmadan çalışması gerekir, her şey içeride çalışmalı.Kopyala-yapıştır yapan kişi veri hazırlama hakkında hiçbir şey bilmiyor ve bilmemeli.
Bu bir anaokulu.