java编程学习中的数组排序算法——冒泡排序和直接排序

java是面向过程的编程语言:Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

给你java学习路线:html-css-js-jq-javase-数据库-jsp-servlet-Struts2-hibernate-mybatis-spring4-springmvc-ssh-ssm

java

(一)冒泡排序

基本思想:对比相邻的元素值,如果满足条件就交换元素值,把较小的元素移动数组前面,较大的元素移动到数组后面

小编推荐一个学Java的学习裙【 六五零,五五四,六零七 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

算法:

冒泡算法由双层循环实现,其中外层循环控制排序轮次,一般为排序的数组长度减一。而内层循环主要用于对比数组中每个临近元素的大小,以确定是否交换位置,对比和交换的次数随排序轮数而减少。

算法实现:

小编推荐一个学Java的学习裙【 六五零,五五四,六零七 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

java

(二)直接选择排序

速度比冒泡排序快一些

基本思想:将指定排序位置与其他数组元素分别对比,如果满足条件就交换元素值。

举例:

初始值:63 4 24 1 3 15

第一轮:15 4 24 1 3 63

第二轮:15 4 3 1 24 63

第三轮:1 4 3 15 24 63

第四轮:1 3 4 15 24 63

第五轮:1 3 4 15 24 63

解释:首先找出6个数中最大的与最后一个数交换位置,然后在前5个数中找出最大的数与倒数第二个交换位置,这样length-1次

算法实现:


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 排序的基本概念 在计算机程序开发过程中,经常需要一组数据元素(或记录)按某个关键字进行排序,排序完成的序列可用于快...
    Jack921阅读 1,596评论 1赞 4
  • 概述排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的...
    Luc_阅读 2,409评论 0赞 35
  • 数据结构与算法--排序之冒泡、选择、插入、希尔 我们关注的主要对象是重新排列数组元素的算法,每个元素都有一个主键,...
    sunhaiyu阅读 1,245评论 2赞 12
  • 彭水,两江交汇,高楼林立,霓虹横飞,不愧“武陵水城”。世间又称爱情治愈圣地。 小巷提坎路,江边大码头。乌江水千...
    百色人生阅读 575评论 0赞 0
  • 一个不大不小的巷子口,只能容下一辆小轿车。巷子北面边是一排饭馆,刀削面,麻辣烫,焖面等家常饭应有尽有。饭馆旁边是一...
    孙的小肉球阅读 616评论 0赞 0

友情链接更多精彩内容