public static void Main()
int[] nums = { 5,-1,2,0,3 };
QuickSort(nums, 0, nums.Length - 1);
public static int Partition(int[] arr, int low, int high)
for (int j = low; j < high; j++)
public static void QuickSort(int[] arr, int low, int high)
int pi = Partition(arr, low, high);
QuickSort(arr, low, pi-1);
QuickSort(arr, pi+1, high);
public static void Swap(int[] arr, int i, int j)
public static void PrintArray(int[] arr) {
for (int i = 0; i < arr.Length; i++)
Console.Write(arr[i] + " ");