✈【【零基础 快速学Java】韩顺平 零基础30天学会Java】
排序是将多个数据,依指定的顺序进行排列的过程。
排序的分类:
指将需要处理的所有数据都加载到内部存储器中进行排序。包括(交换式排序法、选择
式排序法和插入式排序法)
数据量过大,无法全部加载到内存中,需要借助外部存储进行排序。包括(合并排序法和直接合并排序法)。
冒泡排序(Bubble Sorting)的基本思想是:通过对待排序序列从后向前(从下标较大的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前移向后部,就象水底下的气泡一样逐渐向上冒。
将五个无序:24,69,80,57,13 使用冒泡排序法将其排成一个从小到大的有序数列。
/**
* ClassName: BubbleSort
* date: 2022/9/2 13:36
*
* @author DingJiaxiong
*/
public class BubbleSort {
public static void main(String[] args) {
int[] arr = {24 , 69 , 80 , 57 , 13};
int temp = 0;
for(int i = 0; i < arr.length - 1 ; i ++){
for(int j = 0 ; j < arr.length - 1 - i; j ++){
if(arr[j] > arr[j + 1]){
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + "\t");
}
}
}
运行结果
在 java 中,常用的查找有两种:
有一个数列:白眉鹰王、金毛狮王、紫衫龙王、青翼蝠王猜数游戏:从键盘中任意输入一个名称,判断数列中是否包含此名称【顺序查找】 要求: 如果找到了,就提示找到,并给出下标值。
import java.util.Scanner;
/**
* ClassName: SeqSearch
* date: 2022/9/2 13:43
*
* @author DingJiaxiong
*/
public class SeqSearch {
public static void main(String[] args) {
String[] names = {"白眉鹰王","金毛狮王","紫衫龙王","青翼蝠王"};
Scanner scanner = new Scanner(System.in);
System.out.println("请输入名字:");
String findName = scanner.next();
int index = -1;
for(int i = 0; i < names.length ; i++){
//比较字符串
if (findName.equals(names[i])){
System.out.println("恭喜找到" + findName);
System.out.println("下标为 = " + i);
index = i;
break;
}
}
if (index == -1){
System.out.println("没有找到" + findName);
}
}
}
运行结果