sortowanie szybkie C#

0

Witam
Jestem leszczem w C# chcę zrobić algorytm sortowania szybkiego
Mam część taką kodu

    static void Main(string[] args)
    {
        int[] tab = new int[20];  //Deklaracja tablicy 20 elem/
        Random los = new Random(); //Deklaracja losowania danych w tablicy
        for (int i = 0; i < tab.Length; i++) //Lenght odczytuje rozmiar całej tablicy
        {
            tab[i] = los.Next(100, 999); //Losowanie liczb które maja sie wyświetlić
            Console.WriteLine("{0}; ", tab[i]);
        }
    }

I teraz nie wiem jak dalej zrobić aby tą tablicę podzielić na pół i wybrać element osiowy

A druga sprawa jest tak a żeby do tego kodu w/w dołączyć kod który by spełniał takie zadanie:
Jaka jest suma liczb nieparzystych z przedziału <150

Proszę o pomoc.

0

często bierze się środkowy element tablicy tab[tab.Length\2]
tablicy nie dzielisz (w jakims fizycznym sensie), tylko wgłąb quick sorta przekazujesz indekcy tablicy na jakich funkcja ma operowac

sortowanie ktore M$ zaimplementował w frameworku oprate jest na quick sort (z lostowaniem liniowym ponizej 8 el.) i jest wyjątkowo szybkie, nie ma sensu wymyślać koła chyba że dla treningu algorytmiki

"Jaka jest suma liczb nieparzystych z przedziału <150"
zasuwasz po wszystkich elementach i sprawdzasz warukem, jesli jest spelniony to dodajesz go do jakiegos licznika (pamietkaj zeby wyzerować licznik przed pętlą), na koniec zwracasz z tej funkcji wartość tego licznika

1 użytkowników online, w tym zalogowanych: 0, gości: 1