mam to stowrzenia funkcje
almost sroted (prawie posortowane rosnąco, tzn. tylko kilka (niewielki procent) wartości będzie zaburzonych/zamienionych )
oraz
few unique ( w tablicy będzie niewiele wartości unikalnych (np. tablica 100-elementowa liczb z zakresu od 1 do 10, wartości powtarzają się wielokrotnie))
w microsct docs sa funckje unique oraz discinct lecz zadna z nich nie działa na array mij kod to
using System;
namespace efektywnos_algorytmow
{
internal class Program
{
private static void Main(string[] args)
{
int[] tab1 = GenerateReversed(100);
for (int i = 0; i < tab1.Length; i++)
{
Console.Write($"{tab1[i]} ");
}
}
public static int[] GenerateRandom(int size)
{
int[] random = new int[size];
Losuj(random, 1, 10);
return random;
}
private static void Losuj(int[] tablica, int minVal, int maxVal)
{
Random random = new Random();
for (int i = 0; i < tablica.Length; i++)
{
tablica[i] = random.Next(minVal, maxVal);
}
}
public static int[] GenerateSorted(int size)
{
int[] tablica = GenerateRandom(size);
Array.Sort(tablica);
return tablica;
}
public static int[] GenerateReversed(int size)
{
int[] tablica = GenerateRandom(size);
Array.Reverse(tablica);
return tablica;
}
public static int[] GenerateUniuque(int size)
{
int[] tablica = GenerateRandom(size);
Array.Reverse(tablica);
return tablica;
}
public static int[] GenerateAlmostsorted(int size)
{
int[] tablica = GenerateRandom(size);
Array.Reverse(tablica);
return tablica;
}
}
}