Java算法
文章平均质量分 77
w98degrees
这个作者很懒,什么都没留下…
展开
-
排序算法-插入排序
插入排序 基本思路:基本操作是将一个记录插入到已排好序的有序表中,从而得到一个新的、记录数增1的有序表。问题描述: 举个例子来说,就用前面的数组,我们要对一个有5个元素的数组进行升序排列,假设第一个元素的值被假定为已排好序了,那么我们就将第2 个元素与数组中的部分进行比较,如果第2 个元素的值较小,则将它插入到第1 个元素的前面,现在就有两个元素排好序了,我们再将没有排序的元素与排...原创 2011-09-25 18:40:05 · 907 阅读 · 0 评论 -
排序算法-冒泡排序
冒泡排序这可能是最简单的排序算法了,算法思想是每次从数组末端开始比较相邻两元素,把第i小的冒泡到数组的第i个位置。i从0一直到N-1从而完成排序。(当然也可以从数组开始端开始比较相邻两元素,把第i大的冒泡到数组的第N-i个位置。i从0一直到N-1从而完成排序 public class BubbleSorter<T extends Comparable<T>> e...原创 2011-09-25 18:50:44 · 79 阅读 · 0 评论 -
排序算法-选择排序
选择排序基本思路:从所有元素中选择一个最小元素a[i]放在a[0](即让最小元素a[i]与a[0]交换),作为第一轮;第二轮是从a[1]开始到最后的各个元素中选择一个最小元素,放在a[1]中;……依次类推。n个数要进行(n-1)轮。算法对比:冒泡排序:比较的次数与冒泡法一样多,但是在每一轮 中只进行一次交换,比冒泡法的交换次数少,相对于冒泡法效率高。插入排序:相对与插入排序来...原创 2011-09-25 18:55:25 · 75 阅读 · 0 评论 -
排序算法-快速排序
快速排序(QuickSort)1、算法思想 快速排序是C.R.A.Hoare于1962年提出的一种划分交换排序。它采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)。(1) 分治法的基本思想 分治法的基本思想是:将原问题分解为若干个规模更小但结构与原问题相似的子问题。递归地解这些子问题,然后将这些子问题的解组合为原问题的解。(2)快速排序的基...原创 2011-09-25 19:45:39 · 162 阅读 · 0 评论