java如何实现插入排序算法
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,这篇文章主要介绍了java如何实现插入排序算法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。插入排序,这种排序在平时生活中很常见,打扑
千家信息网最后更新 2025年01月24日java如何实现插入排序算法
这篇文章主要介绍了java如何实现插入排序算法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
插入排序,这种排序在平时生活中很常见,打扑克时拿到凌乱的手牌捋顺序,整理手上大大小小的钞票等等。
插入即是将目标元素插入到已经排序好的元素之中。
所以需要两层循环。第一层循环取各个为排序的元素,第二层循环将要排序的元素插入到正确的位置。
这么说好像挺简单。其实对于第二层循环将元素插入到正确的位置。我觉得有两种方法。第一种,将要插入的元素使用冒泡的方法两两比较循环找到正确的位置,另一种是比较要排序的元素和各个已经排序的元素,得到正确的角标,最后实现插入。
对于第一种方法,感觉这不像是插入,因为他循环比较并且是通过移动获得正确的位置的。第二种方法由于只是比较大小,最后通过插入到正确的位置而结束。效率比第一种提高一倍。
那么看代码实现吧
第一种实现,效率地下
@Override public void sort(int[] a) { int len=a.length; for(int i=1;i=0&&SortUtils.less(a[j+1], a[j])){//开始比较 SortUtils.exch(a, j, j+1);//交换要排序的元素和已经排序好的元素 j--; } } }
第二种实现,效率较高
@Override public void sort(int[] a) { int len=a.length; for(int i=1;i=0&&SortUtils.less(e, a[j])){//开始比较 a[j+1]=a[j]; //单单移动元素,比上面一种方法快捷 j--; //循环找到要排序元素的正确位置 j+1 } a[j+1]=e;// 为什么是 j+1 // 因为内层while循环结束条件是找到第一个比要插入元素小的数组元素,这个元素的角标即是j// 所以要插入元素的正确位置就是 j+1 }
感谢你能够认真阅读完这篇文章,希望小编分享的"java如何实现插入排序算法"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
元素
排序
循环
位置
方法
篇文章
效率
算法
二层
移动
凌乱
这不
之中
代码
价值
兴趣
内层
只是
同时
大小
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
通用的网络安全密钥
青岛定制软件开发公司
皮皮虾软件开发
软件开发涉及的方案
数据库培训绘本
玩对峙2哪个服务器好
自建github 服务器
数据库设计技术怎么写
计算机网络技术从业怎么样
数据库访问接口有哪些
灵感互联网科技(济宁)
网络安全信息安全保研夏令营
在中国有什么打车软件开发
青禾软件开发平台
陕西九思联强互联网科技面试
vs动态数据库
财务系统服务器安全防范
互联网汽车智能高科技
深圳周边网络技术
数据库字段有歧义
服务器招聘程序员
山东手机软件开发报价
最新服务器图
unity网游用什么服务器
汕头职业技术学院网络技术
打开sql数据库文件
咸阳市国家网络安全宣传周
拨打某些电话提示服务器错误
项目部网络安全通知
并购案例数据库