1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > java排序方法调用_Java实现顺序查找 二分查找 冒泡排序 方法调用

java排序方法调用_Java实现顺序查找 二分查找 冒泡排序 方法调用

时间:2022-04-02 13:33:03

相关推荐

java排序方法调用_Java实现顺序查找 二分查找 冒泡排序 方法调用

上帝没给我成为富二代的机会,但是给了我成为富一代的机会!

主子很萌:敲代码是个快乐的过程代码截图/图1

题目题目/图2

程序源代码

import java.util.Scanner;

/**

*

* @author 二分查找、顺序查找

*

*/

public class Test {

public static void main(String[] args) {

// TODO Auto-generated method stub

int[] arr= { 23,17,67,33,56,98,20,45,66,26};//定义数组并初始化

/*

* 可用冒泡排序对数组进行排序,方便调用二分查找方法C

*/

for(int j=0;j

for( int i=0;i

if(arr[i]>arr[i+1]){//比较交换

int temp=arr[i+1];

arr[i+1]=arr[i];

arr[i]=temp;

}

}

}

Scanner sn=new Scanner(System.in);//用户输入

System.out.println("请输入数字 ");

int a=sn.nextInt();//接收用户输入并且放到整型变量a中

// T(arr, a);//调用顺序查找方法T

C(arr,a);//调用二分查找的方法C

}

/*

* 建立方法,用顺序查找的方法,用于查找数组里面元素是否符合

*/

public static int T (int[] arr,int q) {//传入主方法定义好的数组和输入的参数

int i;

int num=0;//记录次数,刚开始没有,初始化0

System.out.println("进入顺序查找");

for(i=0;i

num=num+1;

if(arr[i]==q) {//判断

System.out.println("找到了,下标值为:"+i);

System.out.println("查找成功且比较的次数为:"+num);

return i;//返回下标

}

}

if(i==arr.length){

System.out.println("没找到");

System.out.println("查找不成功且比较的次数为:"+num);

}

return -1;//返回-1表示没找到

}

/*

* 二分法查找

*/

public static int C(int[] arr,int a){//传已定义好的数组和要找的数

int begin=0;

int end=arr.length-1;

int mid = 0;

int num=0;//记录次数

System.out.println("进入二分查找");

while(begin<=end){//循环条件是begin要小于等于end

num++;

mid=(begin+end)/2;

if(a>arr[mid]){//查找的数比中间值 大,改变begin

begin=mid+1;

}

else if(a

end=mid-1;

}

else{//相等即找到a==arr[mid]

System.out.println("找到了,下标值为"+mid);

System.out.println("查找成功且比较的次数为:"+num);

return mid;//返回下标

}

}

System.out.println("没找到");

System.out.println("查找不成功且比较的次数为:"+num);

return -1;//返回-1,表示没找到

}

}

运行结果1.1

1.2

2.1

2.2

设想:本想把冒泡排序代码放到二分查找的方法里面,结果没实现

参考文献:哔哩哔哩/video/BV1at411H7m1

特别标注:默默感谢我的Java数据结构与算法的指导老师

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。