摘自:http://blog.csdn.net/mevin/article/details/6714520

程序代码:

view plaincopy to clipboard
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace c_sharp_sort
{
class Program
{
static void Main(string[] args)
{
int[] test7 = { , , , , , , , , , };
heapsort(test7, , ); //堆排序
foreach (int a in test7)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test6 = { , , , , , , , , , };
radixsort(test6, , , ); //基数排序(第4个参数是数组中最大数的10的最大次瞑)
foreach (int a in test6)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test0 = { , , , , , , , , , };
insertsort(test0, ); //插入排序
foreach (int a in test0)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test1 = { , ,, , , , , , , };
newinsertsort(test1, ); //折半插入排序
foreach (int a in test1)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test2 = { , ,, , , , , , , };
shellsort(test2, ); //希尔排序
foreach (int a in test2)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test3 = { , , , , , , , , , };
paopaosort(test3, ); //冒泡排序
foreach (int a in test3)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test4 = { , , , , , , , , , };
fastsort(test4, , ); //快速排序
foreach (int a in test4)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test5 = { , , , , , , , , , };
selectsort(test5, ); //选择排序
foreach (int a in test5)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); Console.Read();
}
static public void heapsort(int[] array, int begin, int end) //堆排序
{
int temp, i, j, length;
for (i = (end - begin) / ; i >= begin; i--) //建初堆
{
j = i;
while (j <= (end - begin) / )
{
if (( * j + ) <= end)
{
if (array[ * j + ] > array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[ * j + ];
array[ * j + ] = array[j];
array[j] = temp;
j = * j + ;
}
else if (array[ * j + ] < array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[j];
array[j] = array[ * j + ];
array[ * j + ] = temp;
j = * j + ;
}
else
break;
}
else
{
if (array[ * j + ] > array[j])
{
temp = array[ * j + ];
array[ * j + ] = array[j];
array[j] = temp;
j = * j + ;
}
break;
}
}
}
for (length = end; length > begin; length--) //首尾交换
{
temp = array[length];
array[length] = array[];
array[] = temp;
j = ;
while (j < (length - begin-) / ) //调整堆
{
if (( * j + ) <= end)
{
if (array[ * j + ] > array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[ * j + ];
array[ * j + ] = array[j];
array[j] = temp;
j = * j + ;
}
else if (array[ * j + ] < array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[j];
array[j] = array[ * j + ];
array[ * j + ] = temp;
j = * j + ;
}
else
break;
}
}
}
} static public void insertsort(int[] array, int length) //直接插入排序
{
int i,j,temp;
for (i = ; i < length; i++)
{
temp = array[i];
j=i-;
while (temp<array[j])
{
array[j + ] = array[j];
j = j - ;
if (j == -)
{
break;
}
}
array[j+]=temp;
}
} static public void newinsertsort(int[] array, int length) //折半插入排序
{
int low,high, i,j,temp;
for (i = ; i <length; i++)
{
temp = array[i];
low = ; high = i - ;
j= (high-low)/;
while (low<=high)
{
if (low == high)
{
if (array[] > temp)
j = ;
else
j = ;
break;
}
else if (low == high - )
{
if (array[j + ] < temp)
j += ;
else if (array[j] < temp)
j++;
break;
}
else if (array[j] < temp)
{
low = j;
j += (high - low) / ;
}
else if (array[j] > temp)
{
high = j;
j= low+(high - low) / ;
}
else
break;
}
for (int n = i- ; n >= j; n--)
array[n + ] = array[n];
array[j] = temp;
}
} static public void shellsort(int[] array, int length) //希尔排序(基于直接插入排序)
{
int i, j,k,delta=length/,temp;
while(delta!=) //delte为分组递增值
{
for (i = ; i < delta; i++)
{
for (j = i + delta; j < length; j += delta)
{
temp = array[j];
k = j - delta;
while (temp < array[k]) //对每组进行直接插入排序
{
array[k + delta] = array[k];
k = k - delta;
if (k == i - delta)
{
break;
}
}
array[k + delta] = temp;
}
j -= delta;
if (array[j] < array[i]) //2组之间首位进行交换排序
{
temp = array[j];
array[j] = array[j];
array[j] = temp;
}
}
delta /= ;
}
} static public void paopaosort(int[] array, int length) //冒泡排序
{
int i, j, temp;
j=length;
while(j!=)
{
for (i = ; i < j-; i++)
{
if (array[i]>array[i+])
{
temp=array[i];
array[i]=array[i+];
array[i+]=temp;
}
}
j--;
}
} static public void fastsort(int[] array, int begin,int end) //快速排序
{
if (begin < || end < || begin >end)
return;
int left = begin, right = end, temp; //经典的快排
temp = array[left];
while (right != left)
{
while (temp < array[right] && right>left)
right--;
if (right > left)
{
array[left] = array[right];
left++;
}
while (temp > array[left] && right > left)
left++;
if (right > left)
{
array[right] = array[left];
right--;
}
}
array[right] = temp;
fastsort(array, right + , end);
fastsort(array, begin, right-);
}
static public void selectsort(int[] array, int length) //选择排序
{
int i=, j, min,temp_array,temp;
while (i < length - )
{
min = array[i];
temp = i;
for (j = i+; j < length; j++)
{
if (array[j] < min)
{
min = array[j];
temp = j;
}
}
temp_array = array[i];
array[i] = array[temp];
array[temp] = temp_array;
i++;
}
}
static public void radixsort(int[] array, int begin,int last, int pow) //基数排序
{
Queue<int>[] queue = new Queue<int>[]; //利用泛型队列来存储筛选分组
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
int[] nn={,,,,,,,,,};
int x, p = pow, n,i;
while (p >= )
{
for (i=begin;i<=last;i++)
{int sum=array[i];
n=pow-p;
while(n!=)
{
sum=sum/;
n--;}
sum=sum%;
switch (sum)
{case : queue[].Enqueue(array[i]);nn[]++;break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
}
} //for
x=n=;
for (i=;i<;i++)
{n=n+x;
x=nn[i];
while (nn[i]!=)
{
array[n + x - nn[i]] = queue[i].Peek();
queue[i].Dequeue();
nn[i]--;
}}
p--;} //while
}
}
}
[c-sharp] view plaincopy
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace c_sharp_sort
{
class Program
{
static void Main(string[] args)
{
int[] test7 = { , , , , , , , , , };
heapsort(test7, , ); //堆排序
foreach (int a in test7)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test6 = { , , , , , , , , , };
radixsort(test6, , , ); //基数排序(第4个参数是数组中最大数的10的最大次瞑)
foreach (int a in test6)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test0 = { , , , , , , , , , };
insertsort(test0, ); //插入排序
foreach (int a in test0)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test1 = { , ,, , , , , , , };
newinsertsort(test1, ); //折半插入排序
foreach (int a in test1)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test2 = { , ,, , , , , , , };
shellsort(test2, ); //希尔排序
foreach (int a in test2)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test3 = { , , , , , , , , , };
paopaosort(test3, ); //冒泡排序
foreach (int a in test3)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test4 = { , , , , , , , , , };
fastsort(test4, , ); //快速排序
foreach (int a in test4)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test5 = { , , , , , , , , , };
selectsort(test5, ); //选择排序
foreach (int a in test5)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); Console.Read();
}
static public void heapsort(int[] array, int begin, int end) //堆排序
{
int temp, i, j, length;
for (i = (end - begin) / ; i >= begin; i--) //建初堆
{
j = i;
while (j <= (end - begin) / )
{
if (( * j + ) <= end)
{
if (array[ * j + ] > array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[ * j + ];
array[ * j + ] = array[j];
array[j] = temp;
j = * j + ;
}
else if (array[ * j + ] < array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[j];
array[j] = array[ * j + ];
array[ * j + ] = temp;
j = * j + ;
}
else
break;
}
else
{
if (array[ * j + ] > array[j])
{
temp = array[ * j + ];
array[ * j + ] = array[j];
array[j] = temp;
j = * j + ;
}
break;
}
}
}
for (length = end; length > begin; length--) //首尾交换
{
temp = array[length];
array[length] = array[];
array[] = temp;
j = ;
while (j < (length - begin-) / ) //调整堆
{
if (( * j + ) <= end)
{
if (array[ * j + ] > array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[ * j + ];
array[ * j + ] = array[j];
array[j] = temp;
j = * j + ;
}
else if (array[ * j + ] < array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[j];
array[j] = array[ * j + ];
array[ * j + ] = temp;
j = * j + ;
}
else
break;
}
}
}
} static public void insertsort(int[] array, int length) //直接插入排序
{
int i,j,temp;
for (i = ; i < length; i++)
{
temp = array[i];
j=i-;
while (temp<array[j])
{
array[j + ] = array[j];
j = j - ;
if (j == -)
{
break;
}
}
array[j+]=temp;
}
} static public void newinsertsort(int[] array, int length) //折半插入排序
{
int low,high, i,j,temp;
for (i = ; i <length; i++)
{
temp = array[i];
low = ; high = i - ;
j= (high-low)/;
while (low<=high)
{
if (low == high)
{
if (array[] > temp)
j = ;
else
j = ;
break;
}
else if (low == high - )
{
if (array[j + ] < temp)
j += ;
else if (array[j] < temp)
j++;
break;
}
else if (array[j] < temp)
{
low = j;
j += (high - low) / ;
}
else if (array[j] > temp)
{
high = j;
j= low+(high - low) / ;
}
else
break;
}
for (int n = i- ; n >= j; n--)
array[n + ] = array[n];
array[j] = temp;
}
} static public void shellsort(int[] array, int length) //希尔排序(基于直接插入排序)
{
int i, j,k,delta=length/,temp;
while(delta!=) //delte为分组递增值
{
for (i = ; i < delta; i++)
{
for (j = i + delta; j < length; j += delta)
{
temp = array[j];
k = j - delta;
while (temp < array[k]) //对每组进行直接插入排序
{
array[k + delta] = array[k];
k = k - delta;
if (k == i - delta)
{
break;
}
}
array[k + delta] = temp;
}
j -= delta;
if (array[j] < array[i]) //2组之间首位进行交换排序
{
temp = array[j];
array[j] = array[j];
array[j] = temp;
}
}
delta /= ;
}
} static public void paopaosort(int[] array, int length) //冒泡排序
{
int i, j, temp;
j=length;
while(j!=)
{
for (i = ; i < j-; i++)
{
if (array[i]>array[i+])
{
temp=array[i];
array[i]=array[i+];
array[i+]=temp;
}
}
j--;
}
} static public void fastsort(int[] array, int begin,int end) //快速排序
{
if (begin < || end < || begin >end)
return;
int left = begin, right = end, temp; //经典的快排
temp = array[left];
while (right != left)
{
while (temp < array[right] && right>left)
right--;
if (right > left)
{
array[left] = array[right];
left++;
}
while (temp > array[left] && right > left)
left++;
if (right > left)
{
array[right] = array[left];
right--;
}
}
array[right] = temp;
fastsort(array, right + , end);
fastsort(array, begin, right-);
}
static public void selectsort(int[] array, int length) //选择排序
{
int i=, j, min,temp_array,temp;
while (i < length - )
{
min = array[i];
temp = i;
for (j = i+; j < length; j++)
{
if (array[j] < min)
{
min = array[j];
temp = j;
}
}
temp_array = array[i];
array[i] = array[temp];
array[temp] = temp_array;
i++;
}
}
static public void radixsort(int[] array, int begin,int last, int pow) //基数排序
{
Queue<int>[] queue = new Queue<int>[]; //利用泛型队列来存储筛选分组
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
int[] nn={,,,,,,,,,};
int x, p = pow, n,i;
while (p >= )
{
for (i=begin;i<=last;i++)
{int sum=array[i];
n=pow-p;
while(n!=)
{
sum=sum/;
n--;}
sum=sum%;
switch (sum)
{case : queue[].Enqueue(array[i]);nn[]++;break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
}
} //for
x=n=;
for (i=;i<;i++)
{n=n+x;
x=nn[i];
while (nn[i]!=)
{
array[n + x - nn[i]] = queue[i].Peek();
queue[i].Dequeue();
nn[i]--;
}}
p--;} //while
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace c_sharp_sort
{
class Program
{
static void Main(string[] args)
{
int[] test7 = { , , , , , , , , , };
heapsort(test7, , ); //堆排序
foreach (int a in test7)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test6 = { , , , , , , , , , };
radixsort(test6, , , ); //基数排序(第4个参数是数组中最大数的10的最大次瞑)
foreach (int a in test6)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test0 = { , , , , , , , , , };
insertsort(test0, ); //插入排序
foreach (int a in test0)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test1 = { , ,, , , , , , , };
newinsertsort(test1, ); //折半插入排序
foreach (int a in test1)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test2 = { , ,, , , , , , , };
shellsort(test2, ); //希尔排序
foreach (int a in test2)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test3 = { , , , , , , , , , };
paopaosort(test3, ); //冒泡排序
foreach (int a in test3)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test4 = { , , , , , , , , , };
fastsort(test4, , ); //快速排序
foreach (int a in test4)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); int[] test5 = { , , , , , , , , , };
selectsort(test5, ); //选择排序
foreach (int a in test5)
Console.Write(a.ToString().PadRight());
Console.WriteLine(); Console.Read();
}
static public void heapsort(int[] array, int begin, int end) //堆排序
{
int temp, i, j, length;
for (i = (end - begin) / ; i >= begin; i--) //建初堆
{
j = i;
while (j <= (end - begin) / )
{
if (( * j + ) <= end)
{
if (array[ * j + ] > array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[ * j + ];
array[ * j + ] = array[j];
array[j] = temp;
j = * j + ;
}
else if (array[ * j + ] < array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[j];
array[j] = array[ * j + ];
array[ * j + ] = temp;
j = * j + ;
}
else
break;
}
else
{
if (array[ * j + ] > array[j])
{
temp = array[ * j + ];
array[ * j + ] = array[j];
array[j] = temp;
j = * j + ;
}
break;
}
}
}
for (length = end; length > begin; length--) //首尾交换
{
temp = array[length];
array[length] = array[];
array[] = temp;
j = ;
while (j < (length - begin-) / ) //调整堆
{
if (( * j + ) <= end)
{
if (array[ * j + ] > array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[ * j + ];
array[ * j + ] = array[j];
array[j] = temp;
j = * j + ;
}
else if (array[ * j + ] < array[ * j + ] && array[ * j + ] > array[j])
{
temp = array[j];
array[j] = array[ * j + ];
array[ * j + ] = temp;
j = * j + ;
}
else
break;
}
}
}
} static public void insertsort(int[] array, int length) //直接插入排序
{
int i,j,temp;
for (i = ; i < length; i++)
{
temp = array[i];
j=i-;
while (temp<array[j])
{
array[j + ] = array[j];
j = j - ;
if (j == -)
{
break;
}
}
array[j+]=temp;
}
} static public void newinsertsort(int[] array, int length) //折半插入排序
{
int low,high, i,j,temp;
for (i = ; i <length; i++)
{
temp = array[i];
low = ; high = i - ;
j= (high-low)/;
while (low<=high)
{
if (low == high)
{
if (array[] > temp)
j = ;
else
j = ;
break;
}
else if (low == high - )
{
if (array[j + ] < temp)
j += ;
else if (array[j] < temp)
j++;
break;
}
else if (array[j] < temp)
{
low = j;
j += (high - low) / ;
}
else if (array[j] > temp)
{
high = j;
j= low+(high - low) / ;
}
else
break;
}
for (int n = i- ; n >= j; n--)
array[n + ] = array[n];
array[j] = temp;
}
} static public void shellsort(int[] array, int length) //希尔排序(基于直接插入排序)
{
int i, j,k,delta=length/,temp;
while(delta!=) //delte为分组递增值
{
for (i = ; i < delta; i++)
{
for (j = i + delta; j < length; j += delta)
{
temp = array[j];
k = j - delta;
while (temp < array[k]) //对每组进行直接插入排序
{
array[k + delta] = array[k];
k = k - delta;
if (k == i - delta)
{
break;
}
}
array[k + delta] = temp;
}
j -= delta;
if (array[j] < array[i]) //2组之间首位进行交换排序
{
temp = array[j];
array[j] = array[j];
array[j] = temp;
}
}
delta /= ;
}
} static public void paopaosort(int[] array, int length) //冒泡排序
{
int i, j, temp;
j=length;
while(j!=)
{
for (i = ; i < j-; i++)
{
if (array[i]>array[i+])
{
temp=array[i];
array[i]=array[i+];
array[i+]=temp;
}
}
j--;
}
} static public void fastsort(int[] array, int begin,int end) //快速排序
{
if (begin < || end < || begin >end)
return;
int left = begin, right = end, temp; //经典的快排
temp = array[left];
while (right != left)
{
while (temp < array[right] && right>left)
right--;
if (right > left)
{
array[left] = array[right];
left++;
}
while (temp > array[left] && right > left)
left++;
if (right > left)
{
array[right] = array[left];
right--;
}
}
array[right] = temp;
fastsort(array, right + , end);
fastsort(array, begin, right-);
}
static public void selectsort(int[] array, int length) //选择排序
{
int i=, j, min,temp_array,temp;
while (i < length - )
{
min = array[i];
temp = i;
for (j = i+; j < length; j++)
{
if (array[j] < min)
{
min = array[j];
temp = j;
}
}
temp_array = array[i];
array[i] = array[temp];
array[temp] = temp_array;
i++;
}
}
static public void radixsort(int[] array, int begin,int last, int pow) //基数排序
{
Queue<int>[] queue = new Queue<int>[]; //利用泛型队列来存储筛选分组
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
queue[] = new Queue<int>();
int[] nn={,,,,,,,,,};
int x, p = pow, n,i;
while (p >= )
{
for (i=begin;i<=last;i++)
{int sum=array[i];
n=pow-p;
while(n!=)
{
sum=sum/;
n--;}
sum=sum%;
switch (sum)
{case : queue[].Enqueue(array[i]);nn[]++;break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
case : queue[].Enqueue(array[i]); nn[]++; break;
}
} //for
x=n=;
for (i=;i<;i++)
{n=n+x;
x=nn[i];
while (nn[i]!=)
{
array[n + x - nn[i]] = queue[i].Peek();
queue[i].Dequeue();
nn[i]--;
}}
p--;} //while
}
}
}

C#编写的 8种初级+高级排序方法(转)的更多相关文章

  1. Java中8种常见的排序方法

    排序方法的演示1)插入排序(直接插入排序.希尔排序)2)交换排序(冒泡排序.快速排序)3)选择排序(直接选择排序.堆排序)4)归并排序5)分配排序(基数排序)所需辅助空间最多:归并排序所需辅助空间最少 ...

  2. php语言实现的7种基本的排序方法

    今天总结了一下常用的7种排序方法,并用php语言实现. 直接插入排序 /* * 直接插入排序,插入排序的思想是:当前插入位置之前的元素有序, * 若插入当前位置的元素比有序元素最后一个元素大,则什么也 ...

  3. Java几种常见的排序方法

    日常操作中常见的排序方法有:冒泡排序.快速排序.选择排序.插入排序.希尔排序,甚至还有基数排序.鸡尾酒排序.桶排序.鸽巢排序.归并排序等. 冒泡排序是一种简单的排序算法.它重复地走访过要排序的数列,一 ...

  4. 几种常见的排序方法总结(Python)

    几种常见的排序算法总结(Python) 排序算法:是一种能将一串数据依照特定顺序进行排序的一种算法. 稳定性:稳定排序算法会让原本有相等键值的记录维持相对次序.也就是如果一个排序算法是稳定的,当有两个 ...

  5. 比较两种数组随机排序方法的效率 JavaScript版

    //比较2中数组随机排序方法的效率 JavaScript版 //randon1思路 //当len=5时候,从0-5中随机3一个放入i=0, // 从0-3随机一个2放入i=2 // 从0-2随机一个1 ...

  6. 几种常见的排序方法(C语言实现)

    #include <stdio.h> #include <stdlib.h> #include <Windows.h> //直接插入排序 void InsertSo ...

  7. C# 几种常见的排序方法

    1.冒泡排序 //冒泡排序 public void BubbleSort(int[] list) { int i, j, temp; bool done = false; j = ; while (( ...

  8. 一种比较高级的方法也可以修改windows为默认启动系统

    运行: sudo mv /etc/grub.d/30_os-prober /etc/grub.d/06_os-probersudo update-grub

  9. 【高级排序算法】1、归并排序法 - Merge Sort

    归并排序法 - Merge Sort 文章目录 归并排序法 - Merge Sort nlogn 比 n^2 快多少? 归并排序设计思想 时间.空间复杂度 归并排序图解 归并排序描述 归并排序小结 参 ...

随机推荐

  1. 解决Sqoop报错Could not load db driver class: com.intersys.jdbc.CacheDriver

    报错栈: // :: INFO tool.CodeGenTool: Beginning code generation // :: ERROR sqoop.Sqoop: Got exception r ...

  2. wireshark抓取本地回环及其问题

    一:The NPF driver isn't running 这个错误是因为没有开启NPF服务造成的. NPF即网络数据包过滤器(Netgroup Packet Filter,NPF)是Winpcap ...

  3. 对JVM还一知半解

    对JVM还一知半解?这篇文章让你彻底搞定JVM 摘要: 对于Java开发者来说,想把自身能力提升到更高层次,某些JVM相关知识应该是优先级很高的.比如说GC策略,JVM调优. 就我在工作中遇到的情况来 ...

  4. (转载)ios的一些知识点

    ios的一些知识点 一 非ARC的内存管理情况  1-autorelease,当用户的代码在持续运行时,自动释放池是不会被销毁的,这段时间内用户可以安全地使用自动释放的对象.当用户的代码运行告一 段落 ...

  5. 6 cocos2dx粒子效果,类图关系,系统原生粒子和自己定义粒子效果,粒子编译器软件,爆炸粒子效果,烟花效果,火焰效果,流星效果,漩涡粒子效果,雪花效果,烟雾效果,太阳效果,下雨效果

     1 粒子 演示样例 2 类图关系 3 系统原生粒子 CCParticleSystem 全部粒子系统的父类 CCParticleSystemPoint. CCParticleSystemQuad ...

  6. Java输入输出处理技术2

    7.从键盘输入 从键盘输入一行字符,并显示到屏幕上. package io; import java.io.*; public class ReadAndWrite { public static v ...

  7. 附3 springboot源码解析 - 构建SpringApplication

    package com.microservice.framework; import org.springframework.boot.SpringApplication; import org.sp ...

  8. Lambda表达式 简介 语法 示例 匿名内部类

    在AS中使用 Lambda 表达式 Demo地址:https://github.com/baiqiantao/MultiTypeTest.git Gradle(Project级别)中添加classpa ...

  9. Netdata Linux下性能实时监测工具

    导读 本文将介绍一款非常好用的工具——Netdata,这是一款Linux性能实时监测工具,为一款开源工具,我对其英文文档进行了翻译,水平有限,有翻译错误的地方欢迎大家指出,希望本文对大家有所帮助,谢谢 ...

  10. Visio 2013 由于形状保护、容器和/或图层属性的设置,无法完全执行此命令

    形状的保护 解决问题:Visio 2013 由于形状保护.容器和/或图层属性的设置,无法完全执行此命令 重要: 本文是由机器翻译的,请参阅免责声明.请在 此处 中查找本文的英文版本以便参考. 禁止对形 ...