public static void Main()
Random random = new Random();
Console.WriteLine("Nhap phan tu mang gioi han (2,20)");
length = Int32.Parse(Console.ReadLine());
if(length >= 2 && length <=20){
double[] arr = new double[length];
double[] arr2 = new double[length];
for(int i = 0 ; i < length ; i++){
double randomNumber = random.Next(1,100) + random.NextDouble();
public static void hoanvi(double[] arr, int a , int b){
public static void selectionsort(double[] arr){
for(int i = 0 ; i < length ; i++){
for(int j = i + 1; j < length; j++){
if(arr[nhonhat] > arr[j]){
for(int i = 0; i < length; i++){
Console.Write(arr[i]+" ");
Console.WriteLine("\nso lan hoan vi cua Selectionsort: "+DemHoanVi);
Console.WriteLine("so lan dem so sanh cua Selectionsort: "+DemHoanVi);
Console.WriteLine("----------------------------------------------");
public static void heapSort(double[] arr2){
int length = arr2.Length;
for(int i = length/2 - 1; i >= 0; i--){
hoanViDem = heapify(arr2,i,length,hoanViDem);
for(int i = length - 1; i >=0; i--){
hoanViDem = heapify(arr2,0,i,hoanViDem);
for(int i = 0; i < length ;i++){
Console.Write(arr2[i]+" ");
Console.WriteLine("\nso lan hoan vi cua heap Sort: "+ hoanViDem);
Console.WriteLine("so lan dem so sanh cua heap Sort: "+ soLanChay);
public static int heapify(double[] arr2,int i,int length,int hoanViDem){
if(left < length && arr2[left] > arr2[largest]){
if(right < length && arr2[right] > arr2[largest]){
heapify(arr2,largest,length,hoanViDem);