using System;
public class Program
{
public static void Main()
int[] nums = new int[]{6,6,6,2,3,4,5,2,3,6,4,5,2,3,4,5,2,3,4,5,34,23,435,7,7,123,23,12,5,345,5,34,5,22,1,213,4,234,6,234,5,5,12,3,123,63,6,345,5,6,34,5,345,12,3,12,5,2,2,9789,567,2355,323,1,4,6,2,6,26};
nums = QuickSort(nums, 0, nums.Length - 1);
foreach(int n in nums)
Console.Write(n + ",");
Console.WriteLine("\n" + BinarySearch(nums, 26));
}
public static int BinarySearch(int[] nums, int target)
if(nums == null || nums.Length == 0)
return -1;
int left = 0;
int right = nums.Length - 1;
while(left <= right)
int mid = left + (right - left) / 2;
if(nums[mid] == target)
return mid;
if(nums[mid] < target)
left = mid + 1;
else
right = mid - 1;
public static int[] QuickSort(int[] arr, int left, int right)
var i = left;
var j = right;
var pivot = arr[left];
while (i <= j)
while (arr[i] < pivot)
i++;
while (arr[j] > pivot)
j--;
if (i <= j)
(arr[i], arr[j]) = (arr[j], arr[i]);
if (left < j)
QuickSort(arr, left, j);
if (i < right)
QuickSort(arr, i, right);
return arr;