Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace Program
- {
- class Program
- {
- static void insertionSort(int[] pole)
- {
- //prvni prvek povazujeme za setrizeny (pole[0]), zaciname od pole[1]
- for (int i = 1; i < pole.Length; i++)
- {
- //int x = docasna promenna, ukladame hodnotu pole[i]
- int x = pole[i];
- int j = i - 1;
- /*prvni projeti for cyklu j = 0, pokud plati pole[j] > x,
- * nasledujici cyklus se provede jednou, dalsi projeti cyklu j = 1,
- * nasledujici cyklus dvakrat...*/
- while (j >= 0 && pole[j] > x)
- {
- //na index j + 1 cislo s indexem j
- pole[j + 1] = pole[j];
- j--;
- }
- //na index j + 1 cislo x, tj. cislo pole[i]
- pole[j + 1] = x;
- }
- }
- //vypisovani pole
- static void vypisPole(int[] pole)
- {
- for (int i = 0; i < pole.Length; i++)
- Console.Write(pole[i] + " ");
- }
- static void Main(string[] args)
- {
- //pole nahodnych cisel
- int[] pole = new int[100];
- Random random = new Random();
- for (int i = 0; i < pole.Length; i++)
- pole[i] = random.Next(0, 100);
- Console.WriteLine("Původní pole:");
- vypisPole(pole);
- Console.WriteLine("\n");
- insertionSort(pole);
- Console.WriteLine("\nSetřízené pole");
- vypisPole(pole);
- }
- }
- }
- /* jede zleva doprava a postupne doleva posouva cisla podle velikosti
- * pokud mame mensi vlevo jde dal a zkousi dalsi dokud neni na svojem miste*/
Add Comment
Please, Sign In to add comment