当前位置: 首页 > news >正文

排序算法-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;}}}

选择排序

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

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;}}}

二分查找法

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

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;}
http://www.lryc.cn/news/392588.html

相关文章:

  • Java+前后端分离架构+ MySQL8.0.36产科信息管理系统 产科电子病历系统源码
  • js使用websocket,vue使用websocket,copy即用
  • 【鸿蒙学习笔记】Stage模型工程目录
  • 算法基础-----【动态规划】
  • Java中的响应式编程与Reactor框架
  • 政安晨【零基础玩转各类开源AI项目】基于Ubuntu系统部署ComfyUI:功能最强大、模块化程度最高的Stable Diffusion图形用户界面和后台
  • 匿名内部类
  • react_web自定义组件_多类型Modal_搜索栏Search
  • Apache Flink架构介绍
  • 华为HCIP Datacom H12-821 卷28
  • 安装Nginx以及简单使用 —— windows系统
  • 【UE5.3】笔记8 添加碰撞,检测碰撞
  • 丝滑流畅!使用kimi快速完成论文仿写
  • 【C++】认识使用string类
  • 如何在 Odoo 16 中对 Many2Many 字段使用 Group by
  • PCL从理解到应用【03】KDTree 原理分析 | 案例分析 | 代码实现
  • Windows 11内置一键系统备份与还原 轻松替代Ghost
  • leetCode-hot100-动态规划专题
  • 【算法笔记自学】入门篇(2)——算法初步
  • Redis基础教程(六):redis 哈希(Hash)
  • 鸿蒙开发设备管理:【@ohos.account.appAccount (应用帐号管理)】
  • java项目自定义打印日志,打印请求方式,参数用时等
  • 03:EDA的进阶使用
  • Linux/Unix系统指令:(tar压缩和解压)
  • MySQL 日期和时间函数知识点总结
  • 鸿蒙登录页面及页面跳转的设计
  • 【居家养老实训室】:看中医保健在养老中的应用
  • 【区块链+基础设施】区块链服务网络 BSN | FISCO BCOS应用案例
  • 六、快速启动框架:SpringBoot3实战-个人版
  • SA 注册流程