首页 > 代码库 > 几种算法,采用java实现
几种算法,采用java实现
//冒泡排序,两两排,不断将大或小值向后移。
public int[] bubbleSort(int[] old){
for(int i=0;i<old.length;i++)
{
for(int j=0;j<old.length-i-1;j++)
{
if(old[j]>old[j+1])
{
int temp=old[j];
old[j]=old[j+1];
old[j+1]=temp;
}
}
}
return old;
}
//插入排序,不断将i前数列排出顺序,再将第i列插进去
public int[] insertSort(int[] old){
for(int i=1;i<old.length;i++)
{
int current=old[i];
int j=i-1;
while(j>=0&&old[j]>current)
{
old[j+1]=old[j];
j--;
}
old[j+1]=current;
}
return old;
}
//希尔排序,插入排序升级版,1.划块2.跳区3.反减
public int[] shellSort(int[] a){
for(int incurrent=a.length/2;incurrent>0;incurrent/=2)
for(int i=0;i<a.length;i+=incurrent)
for(int j=i;j>0;j-=incurrent)
if(a[j]<a[j-incurrent])
{
int temp=a[j];
a[j]=a[j-incurrent];
a[j-incurrent]=temp;
}
return a;
}
//选择排序 即一次选出最大/最小放在最前面
public int[] chooseSort(int[] old){
for(int i=0;i<old.length;i++)
for(int j=i+1;j<old.length;j++)
if(old[j]<old[i])
{
int temp = old[j];
old[j] = old[i];
old[i] = temp;
}
return old;
}
几种算法,采用java实现
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。