排序算法-java版本

冒泡排序

原理:相邻的数据两两比较,小的放前面,大的放后面

java 复制代码
int[] arr={3,5,2,1,4}
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]){
			int temp=arr[j];
			arr[j]=arr[j+1];
			arr[j+1]=temp;
			}
		}
	}

选择排序

升序原理:拿当前元素和其后面所有元素都进行比较,如果有比当前元素小的那么就喝当前元素进行交换位置,直到所有元素全部比较完

java 复制代码
int[] arr={4,1,5,3,2}
for(int i=0;i<arr.length-1;i++){
	for(int j=i+1;j<arr.length;j++){
		if(arr[i]<arr[j]{
			int temp=arr[j];
			arr[i]=arr[j];
			arr[j]=temp;
			}
		}
	}

二分查找法

前提:数组中元素需要有序

java 复制代码
public static boolean searchKey(int[] arr,int key){
	int min=0;
	int max=arr.length-1;
	int mid;
	boolean flag=false;
	while(min<=max){
		mid=(min+max)/2;
		int num=arr[mid];
		if(num==key){
			flag=true;
			break;
			}else if(num>key){
				max=mid-1;
				}else if(num<key){
					min=mid+1;
					}
				}
			return flag;
		}
				
		
相关推荐
她的男孩10 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
复杂网络11 小时前
多个 Claude Code 与多个 Codex 协同工作:设计与实现方案
算法
荣码11 小时前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
plainGeekDev13 小时前
Gson → kotlinx.serialization
android·java·kotlin
小bo波21 小时前
Java Swing 图形用户界面实验 —— 从算术练习到游戏开发的完整实践
java·课程设计·gui·游戏开发·扫雷·swing
咖啡八杯1 天前
GoF设计模式——备忘录模式
java·后端·spring·设计模式
HjhIron1 天前
面试常客:字符串算法从入门到进阶
算法·面试
吴佳浩1 天前
DeepSeek DSpark:Confidence-Scheduled Speculative Decoding 技术解析
人工智能·算法·deepseek