Технически, есть ли разница между этими двумя словами или мы можем использовать их взаимозаменяемо? Оба они более или менее описывают логическую последовательность шагов, которые следуют при решении проблемы. не так ли? Так почему же мы на самом деле используем два таких слова, если они предназначены для того, чтобы говорить об одном и том же?
Или, если они не являются синонимами, что их отличает? В каких контекстах мы должны использовать слово псевдокод против слова алгоритм?
algorithms
terminology
pseudocode
Вамси Эмани
источник
источник
Ответы:
Определение алгоритма из Википедии:
Алгоритмы могут быть описаны различными способами, от чисто математических формул до сложных графов, чаще, чем нет, без псевдокода.
Псевдокод описывает, как вы будете реализовывать алгоритм, не вдаваясь в синтаксические детали.
Так что нет, они на самом деле не являются синонимами.
источник
Алгоритм является идеей о том , как писать код. Псевдокод - это письменный текст, который вам нужен, чтобы донести эту идею.
источник
«Псевдокод» означает «алгоритм», а «английский» означает «шутка-тук».
Алгоритм - это формальная структура для чего-то, что может быть выражено в псевдокоде или в реальном коде.
Шутка - формальная структура чего-то, что может быть выражено на английском или на каком-либо другом языке. (В других культурах шутят? Я даже не знаю.)
источник
Существует только один алгоритм быстрой сортировки, который существует в мире чистых идей Платона. Может быть любое количество различных описаний псевдокода. Я думаю, что я бы определил псевдокод как текст, который выглядит примерно как компьютерный код и может быть переведен опытным программистом в реальный компьютерный код без каких-либо творческих скачков.
Так что нет, я бы не стал использовать термины взаимозаменяемо.
источник
Алгоритм - это систематический логический подход, используемый для решения проблем в компьютере, в то время как псевдокод - это утверждение на простом английском языке, которое позже может быть переведено на язык программирования (программу).
источник
Алгоритм - это семантика, а псевдокод - это всего лишь синтаксис сообщения о решении проблемы. Это означает, что алгоритм является реальным способом решения проблемы, в то время как псевдокод является просто способом выражения этого пути.
Алгоритм имеет то же значение (семантическое), если вы выражаете его каким-либо образом (синтаксис), будь то язык программирования C, псевдокод или английский язык.
источник
Псевдокод, как я понимаю, является посредником между алгоритмом и реализуемой программой. Вы можете основывать свой псевдокод на алгоритме. Это содержит переносимые шаги для реализации.
С другой стороны, алгоритм подразумевает общую логику. последовательными шагами, чтобы решить проблему. если он представлен схематически, он называется блок-схемой.
Некоторые могут отнести это к псевдокоду, являющемуся общим термином в разработке программного обеспечения для бизнеса, когда разработчики бизнес-объектов на стороне клиента пишут псевдокод на основе требований. Это дается программисту / разработчику для реализации.
Алгоритм, который вы найдете более распространенным в терминологии программирования, таких как системное программирование, поиск, сортировка, практически любой, где есть сложная логика для реализации.
источник
Хотя псевдокод кажется ближе к коду, чем к алгоритму, на практике псевдокод менее формален и представляет собой описание более высокого уровня. Например, вы можете описать шахматный компьютер как псевдокод:
Да, это псевдокод, он полезен в качестве хорошей отправной точки, но затеняет многие детали. Он не учитывает сложности и различия в реализации, но самое большое преимущество заключается в том, что он позволяет вам осмыслить всю ситуацию без необходимости разбираться со всеми деталями.
Вы можете пересмотреть его, добавив еще один уровень так:
Теперь вы можете написать псевдокод для каждого из основных шагов, таких как «составить список легальных ходов черных», например:
Теперь вы можете видеть, что мощь псевдокода действительно заключается в его способности показать всю ситуацию за один раз, а затем позволяет вам обращаться к деталям по частям. Слабость в том, что любой шаг не является определенным простым шагом.
Алгоритм обычно выбирает один из этих шагов и детализирует различные структуры данных на символическом языке, чтобы вы могли эффективно достичь цели этого шага.
Например,
get_legal_moves(board, color)
достоин разработки алгоритма:Вы можете видеть, что алгоритм должен быть очень точным, чтобы быть полезным.
Это гарантирует несколько вещей: что цели будут достигнуты без ошибок, в первую очередь. Шаги очень подробны и выполняются механизированным способом, и эти шаги достаточно малы, чтобы вы могли изменить их порядок, чтобы повысить эффективность (скорость), с которой вы завершаете задачу.
источник
Исходя из моего опыта, псевдокод всегда был написан функциональным персоналом (людьми, которые владеют процессом) как способ выражения бизнес-правил, применимых к процессу, модулю или подсистеме.
Алгоритм - это набор логических выражений для решения как можно более конкретной задачи.
источник
Алгоритм - это то, что представлено в математических терминах. Он включает в себя анализ, базовую реализацию (даже если это выражено в псевдокоде), соображения сложности (лучший, средний и наихудший анализ и т. Д.).
Псевдокод - это читаемое человеком представление программы. Даже это может быть использовано для описания алгоритма.
источник
Псевдокод означает, что одиночный код & может быть инструкцией. Здесь псевдокод означает оператор, который используется для легкого понимания языка компьютерного программирования ... он помогает в анализе программного кода ... , где алгоритм - это конечный логический шаг инструкций для решения проблемы.
источник