Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЕК. Алгоритмізація. Конспект лекцій.docx
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
1.89 Mб
Скачать
  1. Алгоритми обробки масивів

Перелік питань:

      1. Визначення масивів.

      2. Операції з масивами.

      3. Упорядкування масивів: сортування вибором; сортування вставкою; бульбашкове сортування; сортування методом Шелла; метод швидкого сортування.

      4. Вибір методів сортування.

      5. Пошук в упорядкованих масивах методом половинного поділу, інтерполяційним методом.

      6. Застосування індексів для пошуку у невпорядкованих даних.

    1. Визначення масивів

Масив – базова регулярна впорядкована структура даних для зберігання значення одного типу

Доступ до елементів масиву є прямим, здійснюється за один крок за допомогою індексу

Масив може бути одновимірним чи багатовимірним.

Масив займає повний обсяг відведеного на нього пам’яті, незалежно від того, скільки елементів записано до нього

Операції запису і зчитування елементу з конкретним індексом з масиву є швидкими

Операція зміни розміру масиви, вставки/видалення елемента із зсувом усіх інших є повільними

Декларація і доступ до елементів масиву у C#

Декларація масиву у C# відбувається наступним чином:

int[] Integers;

Декларація і створення одномірного масиву розміром 100 значень:

int[] Integers = new int[100];

Для доступу до елемента масиву слід вказати його ідентифікатор і індекс:

Integers[50] = 12345;

Індексація елементів масиву починається з 0, тому перший елемент має індекс 0, а останній – розмірність масиву мінус 1.

Ініціалізація масиву під час декларації

Під час декларації масиву можна ініціалізувати його, наприклад:

string[] DaysOfTheWeek = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };

Декларація багатовимірних масивів

Декларація багатовимірних прямокутних масивів здійснюється наступним чином (наприклад, декларація та ініціалізація двовимірного масиву рядків):

string[,] StudentNameGrade = { {"Петренко", "Відмінно"},

{"Луценко", "Задовільно"},

{"Шевченко", "Добре"}

};

Декларація ортогональних масивів здійснюється наступним чином:

int[][][] Integers;

    1. Операції над масивами

Для отримання довжини одновимірного масиву використовується конструкція:

int ArrayLength = Integers.Length;

Для багатовимірного масиву використовується метод GetLength(), у параметрах якого слід вказати номер виміру (починаючи з 0):

int multiArrLength = StudentNameGrade.GetLength(0);

Для сортування масиву використовується наступна конструкція (викликається статичний метод Sort() стандартного класу Array, якому передається масив, що необхідно відсортувати, у якості параметру) :

Array.Sort(Integers);

Для зміни порядку елементів масиву на зворотній використовується наступна конструкція:

Array.Reverse(Integers);

Обробка всього масиву

Якщо необхідно звернутися до всіх елементів масиву, то зробити це можна в циклі, або використати ітератор.

Виведення всіх елементів масиву на екран, використовуючи цикл:

for (int i = 0; i < Integers.Length; i++)

{

Console.WriteLine(Integers[i].ToString());

}

Виведення всіх елементів масиву на екран, використовуючи ітератор:

foreach (int item in Integers)

{

Console.WriteLine(item.ToString());

}