java+算法
gaojiehigh
这个作者很懒,什么都没留下…
展开
-
自己写的冒泡排序算法
冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。 即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。在第二趟:仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数...原创 2012-07-05 08:31:56 · 98 阅读 · 0 评论 -
插入排序 java
插入排序的算法描述:一般来说,插入排序都采用in-place在数组上实现。具体算法描述如下: ⒈ 从第一个元素开始,该元素可以认为已经被排序 ⒉ 取出下一个元素,在已经排序的元素序列中从后向前扫描 ⒊ 如果该元素(已排序)大于新元素,将该元素移到下一位置 ⒋ 重复步骤3,直到找到已排序的元素小于或者等于新元素的位置 ⒌ 将新元素插入到下一位置中 ...原创 2012-07-05 16:05:52 · 85 阅读 · 0 评论 -
选择排序
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小元素,然后放到排序序列末尾(目前已被排序的序列)。以此类推,直到所有元素均排序完毕。[code="java"]import java.util.Scanner;public class selection...原创 2012-07-05 16:09:48 · 87 阅读 · 0 评论 -
快速排序
快速排序使用分治法(Divide and conquer)策略来把一个序列(list)分为两个子序列(sub-lists)。步骤为:从数列中挑出一个元素,称为 "基准"(pivot), 重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分割结束之后,该基准就处于数列的中间位置。这个称为分割(partition)操...原创 2012-07-05 17:28:06 · 96 阅读 · 0 评论 -
最小生成树总结
最近在学习算法,在学习最小生成树的过程中,感觉算法思想很简单,但实现起来对于我这样的菜鸟来说有些困难,后来上网搜了一些文章,发现这篇讲得很清楚,与大家分享一下[url]http://blog.csdn.net/fengchaokobe/article/details/7521780[/url]。我着重研究了一下克鲁斯卡尔算法。[size=medium][color=red][b]克鲁斯卡尔...原创 2013-03-22 15:47:45 · 141 阅读 · 0 评论 -
约瑟夫环问题
约瑟夫环问题起源于一个犹太故事。约瑟夫环问题的大意如下: 罗马人攻占了桥塔波特,41人藏在一个山洞中躲过了这场浩劫。这41个人中,包括历史学家Josephus(约瑟夫)和他的一个朋友。剩余的39个人为了表示不向罗马人屈服,决定集体自杀。大家决定了一个自杀方案,所有者41个人围成一个圆圈,由第1个人开始顺时针报数,每报数为3的人就立刻自杀,然后再由下一个人重新开始报数,仍然是每...原创 2013-03-22 18:01:49 · 127 阅读 · 0 评论