Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Алгоритм нахождения двух минимумов одним циклом

57K
13 сентября 2010 года
grin09
7 / / 28.06.2010
есть наброска, но она не всегда считаем правильно:confused:

for (int i=0; i<n; i++)
{
if (min1>a)
min1=a;
else if (min2 > a)
min2=a;
}

подскажите плз как это сделать..
2.1K
13 сентября 2010 года
Norgat
452 / / 12.08.2009
Код:
int A[] = {2,-3,4,1,7,12,10};

    int min1;
    int min2;

    if(A[0] > A[1])
    {
        min1 = A[1];
        min2 = A[0];
    }
    else
    {
        min1 = A[0];
        min2 = A[1];
    }

    for(int i = 2; i < 7; ++i)
    {
        if( A < min1)
        {
// предыдущий min надо сбросить в min2, т.к. очевидно min1 <= min2 всегда
            min2 = min1;  
            min1 = A;
        }
        else if(A < min2) min2 = A;
    }
1.8K
13 сентября 2010 года
LM(AL/M)
332 / / 20.12.2005
вот ещё вариант, малость попроще:

 
Код:
m1 := a[0];
      m2 := a[1];

      for i := 2 to N - 1 do begin

        if m1 > m2 then swap(m1, m2);
        if m2 > a then m2 := a;

      end;
57K
14 сентября 2010 года
grin09
7 / / 28.06.2010
капец, вот я затупил, все элементарно просто)))
спасибо за помощь
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог