Java选择排序举例分析
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,这篇文章主要介绍"Java选择排序举例分析",在日常操作中,相信很多人在Java选择排序举例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Java选择排序举例分析"
千家信息网最后更新 2025年02月02日Java选择排序举例分析
这篇文章主要介绍"Java选择排序举例分析",在日常操作中,相信很多人在Java选择排序举例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Java选择排序举例分析"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
选择排序原理
①假设第一个索引处的元素为最小值,和其他值进行比较,如果当前的索引处的元素大于其他某个索引处的值,则假定其他某个索引处的值为最小值,最后找到最小值所在的索引
②交换第一个索引处和最小值所在的索引处的值
选择排序API设计
类名 | Selection |
构造方法 | Selection():创建Selection对象 |
成员方法 | 1.public static void sort(Comparable[] a):对数组内的元素进行排序 2.private static boolean greater(Comparable v,Comparable w):判断v是否大于w 3.private static void exchange(Comparable[] a,int i,int j):交换a数组中,索引i和索引j处的值 |
选择排序代码实现
public class Selection { //对数组a中的元素进行排序 public static void sort(Comparable[] a){ for(int i=0;i0; } private static void exchange(Comparable[] a,int i,int j ){ Comparable t=a[i]; a[i]=a[j]; a[j]=t; }}class Test{ public static void main(String[] args) { Integer[] a={4,6,8,7,9,2,10,1}; Selection.sort(a); System.out.println(Arrays.toString(a)); }}
选择排序的时间复杂度
选择排序使用了双层for循环,外层循环完成了数据交换,内层循环完成了数据比较,所以分别统计:数据比较次数:(N-1)+(N-2)+(N-3)+...+2+1=
((N-1)+1)*(N-1)/2=N^2/2-N/2;
数据交换次数:N-1;
时间复杂度: N^2/2-N/2+(N-1)=N^2/2+N/2-1;
根据大O推导法则,保留最高阶项,去除常数因子,时间复杂度为O(N^2)
到此,关于"Java选择排序举例分析"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
排序
选择
索引
分析
最小
元素
数据
学习
复杂
复杂度
数组
方法
时间
循环
所在
更多
次数
帮助
实用
接下来
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
电脑手写软件开发
广州印彩互联网科技有限公司
TABS数据库多少钱
软件开发方法研究和比较
杭州恩牛网络技术 待遇
数据库怎么搞无列名
我的世界服务器列表
syslog配置多个服务器
胜云网络技术有限公司
fo软件开发的方法
网络安全ppt结束语
服务器采购注意事项
完整的软件开发流程好处
顶尖的软件开发杂志
java数据库分层添加
mdb数据库中的图层
数据库打折语法
汝阳软件开发
安卓系统软件开发视频
不属于网络安全法的特
数据库环境的搭建
新建网络安全实训室的立项报告
胜云网络技术有限公司
赛季服骨镰服务器怎么不开
深圳市维克拉网络技术
数据库的逻辑结构有哪些关系
数据库表度量
网络安全的手抄报中学生
isp发送服务器的协议
网络安全视频直播管理