Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.10.2012, 15:08   #1
elen_7C9
 
Аватар для elen_7C9
 
Регистрация: 26.02.2012
Сообщений: 4
По умолчанию Ускорить выполнение цикла

Здравствуйте!
Как можно уменьшить время выполнения этого цикла??
Код:
 for (int i=0; i<n; i++)
  { 
    int m=i;
    for (int j=i+1; j<n; j++) 
    if (a[i]<a[j])
     {
      a[i]=a[j];
       m=j; 
     }
      if (i==m)
       a[m]=0;    
  }
elen_7C9 вне форума Ответить с цитированием
Старый 21.10.2012, 15:47   #2
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

что за задача то?
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 21.10.2012, 20:48   #3
elen_7C9
 
Аватар для elen_7C9
 
Регистрация: 26.02.2012
Сообщений: 4
По умолчанию

В массиве нужно заменить каждое число на другое, расположенное справа и большее заменяемого. В противном случае заменить на ноль.
т.е. было 1 -2 8 3 5, а надо получить 8 8 0 5 0
elen_7C9 вне форума Ответить с цитированием
Старый 21.10.2012, 21:23   #4
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Цитата:
Сообщение от elen_7C9 Посмотреть сообщение
В массиве нужно заменить каждое число на другое, расположенное справа и большее заменяемого. В противном случае заменить на ноль.
А если чисел, больших заменяемого и расположенных справа от него, несколько, то что?
Somebody вне форума Ответить с цитированием
Старый 21.10.2012, 21:57   #5
elen_7C9
 
Аватар для elen_7C9
 
Регистрация: 26.02.2012
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Somebody Посмотреть сообщение
А если чисел, больших заменяемого и расположенных справа от него, несколько, то что?
ближайшее к заменяемому
1 2 3 4 5 -> 2 3 4 5 0
elen_7C9 вне форума Ответить с цитированием
Старый 21.10.2012, 22:06   #6
kuli4ok
Пользователь
 
Регистрация: 23.09.2012
Сообщений: 32
По умолчанию

Сделай все переменные регистровыми, добавив при их объявлении перед типом слово register, должно работать быстрее
Я помог вам? Помогите и вы мне:
WMZ: Z401849412998
WMR: R251473869576
kuli4ok вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
избавиться от цикла for или ускорить вычисление AlexVI Visual C++ 0 09.02.2012 16:06
алгоритмы нахождения эйлерова цикла и гамильтонова цикла в графе. Necare Помощь студентам 0 15.11.2011 18:26
Можно ли ускорить выполнение этого кода? Velross Помощь студентам 3 07.01.2010 19:37
Можно ли как-то ускорить выполнение этого кода (обработка примечаний)? motorway Microsoft Office Excel 2 23.07.2009 17:06
Как ускорить выполнение макросов tat-besidovska Microsoft Office Excel 1 22.01.2008 12:12