Как писать алгоритмы для начинающих

Работаю допоздна в своем офисе

Кредит изображения: vgajic / E + / GettyImages

Разработка новых алгоритмов может показаться пугающей для начинающих программистов, но это навык, который можно практиковать, как и любой другой. Начните с поиска книги по проблемам алгоритмов для начинающих или с посещения онлайн- или офлайн-уроков по информатике. Практикуйтесь в освоении основ проектирования алгоритмов, включая оценку сложности и времени выполнения, проверку для крайних случаев, которые могут вызвать проблемы для компьютерного алгоритма, и разбивать проблемы на более мелкие части.

Что такое компьютерный алгоритм

Алгоритм - это процедура, которой следует компьютер или человек для решения проблемы. Деление в столбик - это примерный алгоритм, которому многие люди учатся в школе. Другой распространенный пример - алгоритм Евклида, используемый для нахождения наибольшего общего делителя двух чисел.

Видео дня

Компьютерный алгоритм в конечном итоге написан на языке программирования, который компьютер может понять, но когда алгоритм Разработанный, программисты и компьютерные ученые часто пишут его сначала неформально в виде прозы, а затем более формально в общем формате, называемом псевдокод.

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

Примеры простых алгоритмов для начинающих

Знаменитые примеры алгоритмов часто преподают начинающим компьютерщикам и программистам. Некоторые примеры: алгоритм Дейкстры, который используется в теории графов для поиска кратчайшего пути между двумя точками; Сортировка слиянием, которая используется для сортировки списков данных; и алгоритм RSA, используемый для шифрования данных. Многие из них доступны в Интернете в виде бесплатных учебников, видео и учебных материалов.

На сайте онлайн-обучения Khan Academy есть много примеров алгоритмов, с которыми могут поэкспериментировать новички. Крупные университеты, такие как Гарвард, Стэнфорд и Массачусетский технологический институт, делают учебные программы материалы и обучающие видеоролики с общими алгоритмами доступны в Интернете для вводного курса информатики классы.

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

Соображения алгоритма

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

Перед тем, как приступить к написанию кода, рекомендуется самостоятельно протестировать алгоритм с помощью ручки и бумаги в некоторых простых случаях. Когда вы думаете об эффективности, думайте о среднем случае, общих ситуациях, с которыми может столкнуться ваш алгоритм, и о наихудшем случае времени выполнения. Среда выполнения наихудшего случая часто представлена ​​так называемой нотацией Big-O.