选择排序
1.基本思想:
每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。
public class SelectionSorting {
public static void main(String[] args) {
int[] sortArray = { 2, 8, 43, 3, 33, 1, 35, 34, 6, 9 };
int[] resultArray = SelectionSort(sortArray);
for (int i = 0; i < sort...


- [649320885] 下次学到的时候 再来看(因为现在看不懂~!!~) 03/19 09:23
- [woshihuo12] 看了 好文章。。 顶起。。 03/05 22:49
- [游客] 看了,支持 11/25 13:27
- [lwbfq] 好文 收藏 呵呵 11/06 17:06
- [游客] 谢谢! 11/06 16:31
- [zhouteng] 不错~~~ 10/29 18:46
- [游客] 正如楼上所说,很不错的一篇文章 让我明白了"=="和"equals()"的区别。 10/28 10:53
- [abob] 支持一下~ 10/22 15:03
- [mess] 经典简单排序,掌握之 :-) 10/22 14:31
- [mess] 不错的文章,正学java,收藏了~ 10/22 14:31
[2008-10-21 17:30] 选择排序
阅读全文 |
评论次数(0) |
浏览次数(690) |
所属类型(算法&数据结构)
[2008-10-21 17:10] 冒泡排序
冒泡排序(BubbleSort)
1.基本思想:
两两比较待排序数据元素的大小,发现两个数据元素的次序相反时即进行交换,直到没有反序的数据元素为止。
2.排序过程:
设想被排序的数组R[1..N]垂直竖立,将每个数据元素看作有重量的气泡,根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R,凡扫描到违反本原则的轻气泡,就使其向上\"漂浮\",如此反复进行,直至最后任何两个气泡都是轻者在上,重者在下为止。
public class Sort {
public static void main(String args[]) {
int[] sortAr...
1.基本思想:
两两比较待排序数据元素的大小,发现两个数据元素的次序相反时即进行交换,直到没有反序的数据元素为止。
2.排序过程:
设想被排序的数组R[1..N]垂直竖立,将每个数据元素看作有重量的气泡,根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R,凡扫描到违反本原则的轻气泡,就使其向上\"漂浮\",如此反复进行,直至最后任何两个气泡都是轻者在上,重者在下为止。
public class Sort {
public static void main(String args[]) {
int[] sortAr...
阅读全文 |
评论次数(1) |
浏览次数(677) |
所属类型(算法&数据结构)
[2008-10-21 16:55] 排序算法三例
一、插入排序(InsertionSort)
1.基本思想:
每次将一个待排序的数据元素,插入到前面已经排好序的数列中的适当位置,使数列依然有序;直到待排序数据元素全部插入完为止。
2.排序过程:
【示例】:
[初始关键字][49]38659776132749
J=2(38)[3849]659776132749
J=3(65)[384965]9776132749
J=4(97)[38496597]76132749
J=5(76)[3849657697]132749
J=6(13)[133849657697]2749
J=7(27)[13273849657697]49
J...
1.基本思想:
每次将一个待排序的数据元素,插入到前面已经排好序的数列中的适当位置,使数列依然有序;直到待排序数据元素全部插入完为止。
2.排序过程:
【示例】:
[初始关键字][49]38659776132749
J=2(38)[3849]659776132749
J=3(65)[384965]9776132749
J=4(97)[38496597]76132749
J=5(76)[3849657697]132749
J=6(13)[133849657697]2749
J=7(27)[13273849657697]49
J...
阅读全文 |
评论次数(1) |
浏览次数(600) |
所属类型(算法&数据结构)
[2008-10-21 10:31] Nim取子游戏
Nim取子游戏是由两个人面对若干堆硬币(或石子)进行的游戏。设有k>=1堆硬币,各堆分别含有N1,N2,……NK枚硬币。游戏的目的就是选择最后剩下的硬币。游戏法则如下:1.两个游戏人交替进行游戏(游戏人I和游戏人II);2.当轮到每个游戏人取子时,选择这些堆中的一堆,并从所选的堆中取走至少一枚硬币(游戏人可以取走他所选堆中的全部硬币);3.当所有的堆都变成空堆时,最后取子的游戏人即为胜者。这个游戏中的变量是堆数k和各堆的硬币数N1,N2,……Nk。对应的组合问题是,确定游戏人I获胜还是游戏人II获胜以及两个游戏人应该如何取子才能保证自己获胜(获胜策略)。为了进一步理解Nim取子游戏,我们考查某...
阅读全文 |
评论次数(0) |
浏览次数(322) |
所属类型(算法&数据结构)
页码数(1):
1