В чем разница между кодированием, структурами данных и алгоритмами?

Кодирование - вы говорите компьютеру, что нужно поработать

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

Далее, как написать программу? Простой английский - это нормально? Если я напишу «сложите 10 и 20», компьютер добавит. Ни один компьютер не понимает по-английски. Он понимает только нули и единицы, называемые битами. Внутри компьютеров у нас есть микропроцессоры и микроконтроллеры, которые знают только нули и единицы. Чтобы узнать больше о том, как используются нули и единицы для вычисления сложения, изучите основы микропроцессоров, которые здесь не рассматриваются.

Тогда как написать программу для сложения двух чисел, понятную компьютеру. А вот и компьютерные языки (Assembly / C / C ++ / Java и т. Д.). Так что напишите / закодируйте Программу на любом из вышеперечисленных языков и передайте ее компьютеру.

Если вы знаете язык ассемблера, тогда пишите программу на этом языке, или если вы знаете язык C, то напишите его на C или других языках программирования, которые вы знаете. Для добавления 10 и 20 ниже приведена программа, написанная на C

#include<stdio.h>
#include<conio.h>
void main() {
 int a = 10, b=20;
 printf("%d", a+b);
 getch();
}

Сохраните файл с расширением .c. Если вы запустите вышеуказанную программу, компьютер поймет, преобразует ее в 0 и 1, вычислит сумму и предоставит результат.

Здесь возникает основной вопрос. Зачем мне нужен компьютер для сложения? Я умею складывать лучше, чем компьютер. Если это так, добавьте 99999999 + 99999999. Вы можете добавить, но для расчета потребуется время, но если вы передадите два вышеуказанных значения, ваша компьютерная программа сложения покажет результаты менее чем за секунду.

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

Структуры данных

Переходя к Datastructures. Этот термин может быть сложным для многих новичков, и я тоже чувствовал себя сложным, пока не понял его лучше.

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

Как выглядит компьютерная память? Это диск, на котором есть пробелы. У каждого будет адрес.

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

Если группа из десяти человек (все из одной семьи) придет в отель и забронирует 10 номеров, как вы распределите для них номера? Будете ли вы размещать 10 комнат последовательно или по одной комнате на этаже. В первом случае общение между ними будет проще, поскольку комнаты расположены последовательно, но в последнем случае это затруднительно, так как они находятся на разных этажах. Какой из них эффективен? Очевидно, что первый случай эффективен.

Точно так же на компьютере, если вы хотите выделить место для данных, чтобы эффективно хранить их в памяти, используются структуры данных. Итак, если у вас есть группа из 10 данных (все принадлежат целым числам / символам / плавающей запятой ..), тогда структура данных Array может использоваться для хранения данных в памяти, поскольку массив хранит данные последовательно. Аналогичным образом используются другие структуры данных в зависимости от требований.

Итак, в основном структуры данных означают - способ эффективного хранения данных в памяти компьютера.

Алгоритмы

Это пошаговая процедура для программы, которая дает желаемый результат.

Например, если вы хотите сложить два числа 10 и 20, алгоритм будет выглядеть так:

Шаг 1: объявите две переменные a и b и присвойте каждой 10 и 20

Шаг 2: добавьте a и b и отобразите

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

С точки зрения структур данных, например, структура данных массива.

  1. Алгоритм поиска по массиву может использоваться для поиска данных в массиве
  2. Алгоритм вставки массива - для вставки данных в массив
  3. Алгоритм удаления массива - для удаления данных в массиве

Точно так же у нас может быть много алгоритмов для разных структур данных.