近期关于冒泡排序java是?的讨论热度持续攀升,我们通过多方渠道收集整理了相关资讯 ,并进行了系统化的梳理。若这些内容恰好能为您提供参考,将是我们最大的荣幸。
冒泡排序算法:
int类型的数组:3 1 6 2 5
算法:取出最大的放在最后,下次就不用比较最后一个了 。*/
public class BubbleSort{
public static void main(String[] args){
int[] a = {3,1,6,2,5};
//开始排序
for(int i=a.length-1;i>0;i--){
for(int j=0;j<i;j++){
if(a[j]>a[j+1]){
//交换位置
int temp;
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
//遍历
for(int i=0;i<a.length;i++){
System.out.println(a[i]);
}
算法原理
冒泡排序算法的运作如下:(从后往前)
比较相邻的元素。如果第一个比第二个大 ,就交换他们两个。
对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对 。在这一点,最后的元素应该会是最大的数。
针对所有的元素重复以上的步骤 ,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较 。
冒泡排序
(1)基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数 ,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时 ,就将它们互换。
(2)用java实现
ubli?cclass?bubbleSort?{?public?bubbleSort(){?
int?a[]={1,54,6,3,78,34,12,45};?
int?temp=0;?
for(int?i=0;i<a.length;i++){?
for(int?j=i+1;j<a.length;j++){?
if(a[i]>a[j]){?
temp=a[i];?
a[i]=a[j];?
a[j]=temp;?
}?
}?
}?
for(int?i=0;i<a.length;i++)?
System.out.println(a[i]);?
}?
}
递归
递归算法,就是程序的自身调用 。表现在一段程序中往往会遇到调用自身的那样一种coding策略,可以利用大道至简的思想,把一个大的复杂的问题层层转换为一个小的和原问题相似的问题来求解的这样一种策略。能看到我们会用很少的语句解决了非常大的问题 ,所以递归策略的最主要体现就是小的代码量解决了非常复杂的问题。
java代码:
package?com.cjq.filedown;?public?classFab?{?
public?static?void?main(String?args[]){?
System.out.println(fab(5));?}?
private?static?int?fab(int?index){?
if(index==1?||?index==2){? return?1;? }else{? return?fab(index-1)+fab(index-2);? }?}?
}
关于冒泡排序java是?的相关内容介绍到此告一段落,若这些信息对您有所启发,欢迎持续关注本站获取更多优质内容 。
本文来自作者[苗储稍]投稿,不代表捕梦资讯立场,如若转载,请注明出处:https://urbike.com.cn/news/1565.html
评论列表(3条)
我是捕梦资讯的签约作者“苗储稍”
本文概览:近期关于冒泡排序java是?的讨论热度持续攀升,我们通过多方渠道收集整理了相关资讯,并进行了系统化的梳理。若这些内容恰好能为您提供参考,将是我们最大的荣幸。冒泡排序算法:int...
文章不错《冒泡排序java是?》内容很有帮助