1Enum>类这是所有 Java 语言枚举类型的公共基本类。2 常见排序算法冒泡法。简单。比较小的需求可以采用此方法。快速排序。确定关键字,将数据分为小于和大于关键字两部分。然后递归快排这两部分。插入排序。将数据分为有序和无序两部分,逐一遍历无序部分,将记录逐条插入有序部分。有改进的折半插入排序,即...
分类:
其他好文 时间:
2014-07-10 11:50:16
阅读次数:
244
前言插入排序(insertion sort)的基本思想:每次将一个待排序的记录,按其关键字大小插入到前面已经排序好的序列中,直到全部记录插入完成为止.直接插入排序基本思想假设待排序的记录存放在数组R[1..n]中。初始时,R[1]自成1个有序区,无序区为R[2..n].从i = 2起直到i = n ...
分类:
其他好文 时间:
2014-07-10 10:47:12
阅读次数:
235
将一个字符串的元音字母复制到另一个字符串,并排序(30分)问题描述:有一字符串,里面可能包含英文字母(大写、小写)、数字、特殊字符,现在需要实现一函数,将此字符串中的元音字母挑选出来,存入另一个字符串中,并对字符串中的字母进行从小到大的排序(小写的元音字母在前,大写的元音字母在后,依次有序)。说明:...
分类:
其他好文 时间:
2014-06-28 09:55:12
阅读次数:
126
//希尔排序
在直接插入排序算法中,每次插入一个数,使有序序列只增加1个节点,并且对插入下一个数没有提供任何帮助。
如果比较相隔较远距离(称为增量)的数,使得数移动时能跨过多个元素,则进行一次比较就可能消除多个元素交换。
D.L.shell于1959年在以他名字命名的排序算法中实现了这一思想。算法先将要排序的一组数按某个增量d分成若干组,
每组中记录的下标相差d.对每组中全部元素进行排序,...
分类:
其他好文 时间:
2014-06-27 23:35:51
阅读次数:
340
用了半小时才写出来啊, 其实这种思路应用范围很广,利用有序性这个特点,比如本体只要是有序就行,例如两个集合是有序的,求交集,有序数组的查找,有序数组的归并,有序有了优化的可能。 输入一个正数 n,输出所有和为 n 连续正数序列 例如输入 15,由于 1+2+3+4+5=4+5+6=7+8=15,所以...
分类:
编程语言 时间:
2014-06-27 14:11:04
阅读次数:
395
题目:输入一个递增排序的数组和一个数字target,在数组中查找两个数使得它们的和正好是target题解分析:一提到有序数组,应该立马联想到 二分查找因为数组已经有序了,我们可以设置两个游标first和last,下标first指向 0, last指向 size() - 1, 然后相加如果相加和 大于...
分类:
其他好文 时间:
2014-06-27 11:53:40
阅读次数:
210
归并排序(Merge Sort)是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个有序的子序列,再把有序的子序列合并为整体有序序列。
归并排序的具体做法:
把原序列不断地递归等分,直至每等份只有一个元素,此时每等份都是有序的。
相邻等份合并,不断合并,直至合并完全。
二路归并
归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。归并排序最常用的是二路归并,即把两个小的有序的序列和并成一个大的有序序列:合二为一...
分类:
其他好文 时间:
2014-06-27 10:16:41
阅读次数:
315
Working with Characters (与字符相关) 在Swift中,String类型表示一组有序字符的值.每个字符都是一个Unicode符号.可以使用for-in循环来遍历字符串中的每个字符: for character in "Dog!🐶" { println(...
分类:
移动开发 时间:
2014-06-26 15:56:01
阅读次数:
235
问题
二分查找
list.index()无法应对大规模数据的查询,需要用其它方法解决,这里谈的就是二分查找
思路说明
在查找方面,python中有list.index()的方法。例如:
>>> a=[2,4,1,9,3] #list可以是无序,也可以是有序
>>> a.index(4) #找到后返回该值在list中的位置
1
>>...
分类:
编程语言 时间:
2014-06-26 13:17:57
阅读次数:
223
题目链接:bnu 34981 A Matrix
题目大意:假定有一序列,按照题目中给定的算法构造出一张二维表,现在题目给定一张二维表,要求求出序列,要求序列的倒置的字典序最大。
解题思路:构造,对于每一层来说,一定是递增的,根据算法可以得出;并且一个数被换到下一行,一定是因为有序列后面有小于自己的数,所以每一层从最后一个数开始匹配,找到上一层中比自己小的最大数字,假定是该数导致当前数被...
分类:
其他好文 时间:
2014-06-26 06:44:30
阅读次数:
294