Главная :: Алгоритмы :: Простейшие типовые алгоритмы
Ночь. Сидит программист за компом, дописывает последние строчки новой программы. Но тут неожиданно звонок в дверь. Программист за дверь - а там смерть с косой, но маленькая. - Блин не вовремя ты дай допишу программу, а там и забирай меня... - Не переживай мужик, я не за тобой. Я за твоим винтом!

Простейшие типовые алгоритмы

Простейшие типовые алгоритмы позволяют производить набор стандартных простых действий наиболее эффективным способом.

Поиск минимального (максимального) элементов массива

Дан массив n+1 значений ai = (a0, …, an). Необходимо найти наименьший (наибольший) элемент.

Си-код поиска минимального элемента массива:

  // Ищем минимум
  b = a[0];
  for (i = 1; i <= n; i++)
    if ( a[i] < b ) b = a[i];

Си-код поиска максимального элемента массива:

  // Ищем максимум
  b = a[0];
  for (i = 1; i <= n; i++)
    if ( a[i] > b ) b = a[i];

Перестановка

Во многих алгоритмах часто появляется необходимость поменять два элемента местами. Для перестановки местами двух элементов A и B используются два метода: с вспомогательной переменной C или без нее. В результате перестановки переменные обмениваются значениями.

Метод 1. C = B, B = A, A = C.

Метод 2. B = B + A, A = B - A, B = B - A.

Суммирование

Суммирование элементов массива A обеспечивается введением новой переменной для суммы S, и добавлением в цикле к этой переменной последовательно всех значений массива. Алгоритм:

Си-код суммы элементов массива:

  // Суммирование массива
  s = 0;
  for (i = 0; i <= n; i++)
    s += a[i];