04 2017 档案
摘要:希尔排序是冲破二次时间屏障的第一批算法之一。 它是通过比较相距一定间隔的元素来工作,各趟比较所用的距离随着算法的进行而减小,直到最后一趟(比较相邻元素)为止。因此希尔排序也叫缩减增量排序。 希尔排序使用一个序列h1,h2,h3...hk来排序。 具体的意思是 第一趟排序比较的是相隔为hk的元素,也就
阅读全文
摘要:插入排序 通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应的位置并插入。 插入排序是最简单的排序算法之一,由N-1趟排序组成,必须得保证位置0到p处的元素都是已排序状态。 具体实现的代码如下: package k; import java.util.Scanner; publi
阅读全文
摘要:旋转词:把字符串str的任意部分移动到后面形成的新字符串叫做字符串str的旋转词。 比如abc的旋转词有 abc,acb,cba,... 判断str1和str2是否互为旋转词,其最优解可以是时间复杂度为O(n)(n为字符串的长度) 方法如下: 1、判断长度是否相等 2、长度相等的话就构建大字符串,s
阅读全文