Новости
    Bikinika.COM.UA Наш бизнес-партнер Bikinika.COM.UA. С "Buddy.Bet" вас ждут качественные игры и выгодные акции. Начните свой азартный путь с нами и познакомьтесь с удачей лицом к лицу.

Наш бизнес-партнер Bikinika.COM.UA

Главная Новости

Техники и алгоритмы Предложить коррекцию

Опубликовано: 24.10.2023

Техники и алгоритмы Предложить коррекцию

Что такое технология и что такое алгоритм? В чем разница между ними?

Автор: Александр Георгиев

Хотя в компьютерной литературе часто не проводится различие между «техникой» и «алгоритмом», мы проведем между ними некоторое различие.

Алгоритм

Подалгоритмомбудем понимать последовательность шагов, выполнение которых приводит к заданному желаемому результату. Обычно в информатическом смысле алгоритмы применяют ряд уже известных функций и/или операций к входным данным, создавая таким образом желаемый результат в виде выходных данных.

Возможно, самая близкая аналогия из реальной жизни, которую мы можем дать, — это рецепт. Например, «алгоритм» приготовления таратора будет примерно таким:

  1. Резать К огурцы небольшими кубиками со стороной примерно один-два миллиметра
  2. Посолить нарезанный кубиками огурец
  3. Перемешать в кастрюле К ведра йогурта (по 400-500 грамм каждое)
  4. Добавлять К стаканов воды (примерно по 200 миллилитров каждый) и еще раз перемешайте
  5. Добавляем нарезанные огурцы
  6. Добавлять Н ложки масла
  7. Добавлять М зубчики мелко нарезанного чеснока
  8. Добавлять 5*К мелко нарезанные грецкие орехи (без скорлупы)
  9. Перемешиваем минуту-две
  10. Готовый!
Здесь шинковка, смешивание, засолка и т.д. — этодействия, которые мы применяем, а также огурец, йогурт, вода, соль и т. д. этовходные данные, к которым мы их применяем. К, Н и М и являютсяаргументамиалгоритма, которые обычно передаются нам входными данными. Таким образом, наш алгоритм не всегда создает ровно определенное количество одного и того же таратора, а в зависимости от входных данных выдает разное. Например, мы можем сделать таратор без чеснока, если пройдем М = 0.

Обратите внимание, что некоторые из применяемых нами действий могут быть другими алгоритмами. Например, у нас может быть определенный алгоритм нарезки огурца. Также обратите внимание, что невсезаранее исправлено. Конечно, входные данные должны быть разными, но также, например, размер кубиков огурца и время перемешивания в конце конкретно не оговариваются. Существуют алгоритмы, которые сами по себе используют случайные числа для достижения более разнообразных результатов при разных запусках. О них мы поговорим позже в темах про NP-задачи.

Техника

С помощьютехникимы поймём немного другое. Это будет не точная последовательность шагов, которым мы должны следовать, чтобы получить какой-то результат (как это было в случае с алгоритмом), а скорее более общаяидея, с помощью которой мы можем нарисовать алгоритм для конкретная задача. Скажем, примером может служить техника «приготовления супа». В общем, это будет что-то вроде:

  1. Добавьте немного жидкости в большую миску
  2. Добавить продукты
  3. Обработать каким-то образом
Обратите внимание, что это похоже на алгоритм, но гораздо более расплывчато. Насколько большой и какой сосуд (горшок, миска)? Какая жидкость (вода для куриного супа, молоко для бульона из требухи)? Что и сколько продуктов? Как проходить дальнейшую обработку? Есть много неизвестных, которые необходимо заполнить, чтобы получить точный результат (например, куриный суп, таратор или суп из рубца).

Однако если мы укажем, что сосудом будет горшок, то жидкость будет л литров воды, продуктов будет одна курица, С грамм моркови и п граммов картофеля, а обработка будет вариться на плите в течение двух часов, мы получималгоритмприготовления куриного супа.

Дополнительные материалы

  1. Что такое алгоритм Статья в Википедии
  2. «Важность алгоритмов», статья TopCoder

Чтобы предложить исправление, выберите слово или текст, который хотите изменить,

нажмите Enter и отправьте свое предложение.

Страница была посещена 7647 раз.

rss