Инверсия массива



бет1/2
Дата19.03.2022
өлшемі1,39 Mb.
#136132
  1   2
Байланысты:
Сортировка массивов

Инверсия массива


int[] numbers = { -4, -3, -2, -1, 0, 1, 2, 3, 4 };


int n = numbers.Length; // длина массива


int k = n / 2; // середина массива
int temp; // вспомогательный элемент для обмена значениями
for(int i=0; i{
temp = numbers[i];
numbers[i] = numbers[n - i - 1];
numbers[n - i - 1] = temp;
}
foreach(int i in numbers)
{
Console.Write($"{i} \t");

}


Простая сортировка массива


int[] nums = { 4, 7, -45, 2, 4, 2, 79, 33, -5, 12 };

// сортировка


int temp;
for (int i = 0; i < nums.Length - 1; i++)
{
for (int j = i + 1; j < nums.Length; j++)
{
if (nums[i] > nums[j])
{
temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}
}

// вывод
Console.WriteLine("Вывод отсортированного массива");


for (int i = 0; i < nums.Length; i++)
{
Console.WriteLine(nums[i]);

}


1. Реализация сортировки пузырьком


using System;


class Program


{
//метод обмена элементов
static void Swap(ref int e1, ref int e2)
{
var temp = e1;
e1 = e2;
e2 = temp;
}

//сортировка пузырьком


static int[] BubbleSort(int[] array)
{
var len = array.Length;
for (var i = 1; i < len; i++)
{
for (var j = 0; j < len - i; j++)
{
if (array[j] > array[j + 1])
{
Swap(ref array[j], ref array[j + 1]);
}
}
}

return array;


}

static void Main(string[] args)


{
Console.WriteLine("Сортировка пузырьком");
Console.Write("Введите элементы массива: ");
var parts = Console.ReadLine().Split(new[] { " ", ",", ";" }, StringSplitOptions.RemoveEmptyEntries);
var array = new int[parts.Length];
for (int i = 0; i < parts.Length; i++)
{
array[i] = Convert.ToInt32(parts[i]);
}

Console.WriteLine("Отсортированный массив: {0}", string.Join(", ", BubbleSort(array)));


Console.ReadLine();


}
}
Без swap

for (b = 0; b < a; b++)


{
for (int i = 0; i < s.Length - 1; i++)
{
if (s[i] > s[i + 1])
{
c = s[i];
s[i] = s[i + 1];
s[i + 1] = c;
}
}
}





Достарыңызбен бөлісу:
  1   2




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет