package cn.hncu.dataStruct; public class SortMethods { /* 算法好坏的评价指标(一般只在n值非常大的时候才会考虑,如n取10万): * 1、时间复杂度: 通俗点,就是指程序运行的快慢(时间) 通常用计算机的运算(算术,赋值)次数来代替 * 2、 ...
分类:
编程语言 时间:
2016-07-04 21:49:40
阅读次数:
186
试题1:折半查找
折半查找是在有序表中,把待查找数据值与查找范围的中间元素值进行比较,会有三种情况出现:
1)待查找数据值与中间元素值正好相等,则放回中间元素值的索引。
2)待查找数据值比中间元素值小,则以整个查找范围的前半部分作为新的查找范围,执行1),直到找到相等的值。
3)待查找数据值比中间元素值大,则以整个查找范围的后半部分作为新的查找范围...
分类:
编程语言 时间:
2016-07-03 20:02:03
阅读次数:
286
排序的元素实现了Comparable接口,以达到对于通用性. 最基础的排序是冒泡排序,下面是其思路: 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 针对所有的元素重复以上的步骤,除了最后一个。 持续每次对越来越少的元素重复上面的步骤,直到没有任何 ...
分类:
编程语言 时间:
2016-07-03 18:40:27
阅读次数:
122
日常操作中常见的排序方法有:冒泡排序、快速排序、选择排序、插入排序、希尔排序,甚至还有基数排序、鸡尾酒排序、桶排序、鸽巢排序、归并排序等。 一、冒泡排序 冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有 ...
分类:
编程语言 时间:
2016-07-02 14:31:48
阅读次数:
170
经典排序算法在面试中占有很大的比重,也是基础。包括冒泡排序,插入排序,选择排序,希尔排序,归并排序,快速排序,堆排序。希望能帮助到有需要的同学。全部程序采用JAVA实现。
本篇博客所有排序实现均默认从小到大。
一、冒泡排序
BubbleSort
介绍:
冒泡排序的原理非常简单,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。
步骤...
分类:
编程语言 时间:
2016-07-02 11:58:35
阅读次数:
308
/***********************************************************
总结各种排序算法包括但不限于:
1. 插入排序类
1.1 直接插入排序
1.2 二分插入排序
1.3 希尔排序
2. 交换排序类
2.1 冒泡排序
2.2 快速排序
3. 选择排序
3....
分类:
编程语言 时间:
2016-06-29 11:33:30
阅读次数:
246
几种常见的排序算法之比较排序的基本概念以及其算法的种类,介绍几种常见的排序算法的算法:冒泡排序、选择排序、插入排序、归并排序、快速排序、希尔排序的算法和分析它们各自的复杂度,然后以表格的形式,清晰直观的表现出它们的复杂度的不同。在研究学习了之前几种排序算法..
分类:
编程语言 时间:
2016-06-28 00:51:41
阅读次数:
288
本文转自:http://www.cnblogs.com/qqzy168/archive/2013/08/03/3219201.html 本文由网络资料整理转载而来,如有问题,欢迎指正! 分类: 1)插入排序(直接插入排序、希尔排序) 2)交换排序(冒泡排序、快速排序) 3)选择排序(直接选择排序、堆 ...
分类:
编程语言 时间:
2016-06-27 10:28:47
阅读次数:
264
希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。
以下是汇编实现的代码:S0 SEGMENT STACK
DW 20 DUP(?)
TOP LABEL WORD
S0 ENDSS1 SEGMENT
TIP DB "Input ten number and sep...
分类:
编程语言 时间:
2016-06-24 15:56:46
阅读次数:
222
//**留坑待填**// 一、基础知识题 10.1?以关键码序列(503,087,512,061,908,170,897,275,653,426)为例,手工执行以下排序算法,写出每一趟排序结束时的关键码状态: (1)直接插入排序; (2)希尔排序(增量d[1]=5); (3)快速排序; (4)堆排序 ...
分类:
编程语言 时间:
2016-06-23 01:03:36
阅读次数:
10028