- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAVA的算法排序法
XXXXX 学院
课
程
设
计
作 者: XXX
辅导老师: XXX
系 部: 信息工程系
专 业: JAVA面向对象程序设计
题 目: JAVA 的排序算法
2010-12-23
JAVA 排序算法
排序算法
(序)
在我们编写程序的时候,经常会碰到算法问题。
所谓算法 (Alglrithm ),就是在有限的步骤内求解某
一问题所使用的一组定义明确的规则。算法的好坏直
接影响到程序运行的效率,因此,选择一个好的算法
对于编写高效的程序是至关重要的。
以下为算法的主要排序法
直接插入排序……………………………………3.
折半插入排序……………………………………4.
起泡排序………………………………………….6.
简单选择排序…………………………………….8.
希尔排序…………………………………………10.
快速排序…………………………………………12.
堆排序……………………………………………15.
二路归并排序……………………………………18.
基数排序…………………………………………20.
时间复杂度和空间复杂度对照表………………23.
2 / 23
第 页 共 页
JAVA 排序算法
直接插入排序
一、 基本思想:
将数组分成两个小的数组,每次从后面的数组中取出索引最小的数
组元素,插入到前面数组的适当位置,使得插入到前面的数组后,它前
面的数组元素都比它小,而后面的元素都比它大。通常在开始进行排序
的时候,就数组的第一个元素作为一个数组,而将后面的所有元素当成
第一个数组。
二、 排序过程演示:
int[] arr {52,22,7,100,23,19,123,10};
( )
选择第一个元素作为前面的数组 :
step 1:
22 52 7 100 23 19 123 10
【 】
step 2:
7 22 52 100 23 19 123 10
【 】
step 3:
7 22 52 100 23 19 123 10
【 】
step 4:
7 22 23 52 100 19 123 10
【 】
step 5:
7 19 22 23 52 100 123 10
【 】
文档评论(0)