冒泡排序:
是运用数据值比较后,依判断规则对数据位置进行交换,以达到排序的目的
public static void bubbleSort(int[] array) {// 冒泡排序算法
int out, in;
// 外循环记录冒泡次数
for (out = array.length - 1; out >= 1; out--) {
boolean flag = false;
// 进行冒泡
for (in = 0; in < out; in++) {
// 交换数据
if (array[in] > array[in + 1]) {
swap(array, in, in + 1);
}
}
}
}
选择排序:
首先在数组中查找最小值, 如果该值不在第一个位置, 那么将其和处在第一个位置的元素交换,然后从第二个位置重复
static void selectionSort(int[] array) {
for (int i = 0; i < array.length - 1; i++) {
int min_idx = i;
for (int j = i + 1; j < array.length; j++) {
if (array[j] < array[min_idx]) {
min_idx = j;
}
}
if (min_idx != i) {
swap(array, min_idx, i);
}
}
}
插入排序:
是对于欲排序的元素以插入的方式寻找该元素的适当位置,以达到排序的目的。
public static void insertSort(int[] array) {// 插入排序算法
int in, out;
for (out = 1; out < array.length; out++) {// 外循环是给每个数据循环
int temp = array[out]; // 先取出来保存到临时变量里
in = out; // in是记录插入数据之前的每个数据下标
// while内循环是找插入数据的位置,并且把该位置之后的数据(包括该位置)
// 依次往后顺移。
while (in > 0 && array[in - 1] >= temp) {
array[in] = array[in - 1]; // 往后顺移
--in; // 继续往前搜索
}
array[in] = temp; // 该数据要插入的位置
}
}
}
}
分享到:
相关推荐
包括常见的排序算法,以及折半查找,首先对要查找的数据排好序,然后用递归调用的方式实现折半查找(包括了两种实现方式)。指定一个排好序的数组和要查找的值,同时指定要查找的左边界和有边界。左右边界要位于数组...
实现合并排序,插入排序,希尔排序,快速排序,冒泡排序,桶排序算法的java实现。
java实现排序,各种排序算法,冒泡排序,选择排序,插入排序等等
Java实现六种常用排序 并用多线程进行速度比较(其实意义不大) 含有代码
自己写的4个Java代码,内有详细注释,适合想学... insertion_sort.java --插入排序 Divide.java --分治排序 HanoiCompute.java --递归实现汉诺塔 FileCtrl.java --递归实现显示目录下的所有文件和文件夹
java实现七种排序算法
冒泡排序、快速排序、归并排序、插入排序、选择排序、二分排序、希尔排序
要求:用一个类来描述一个排序算法,类中的sort方法通过调用比较、交换方法来实现数组排序。排序类放入一个特定的包MySort中。 (1)写一个final参数类M,包括比较次数、交换次数、探测次数属性,并重写构造器和...
Java实现八大排序算法,算法描述以及代码实现, 1. 直接插入排序 2. 希尔排序 3. 简单选择排序 4. 堆排序 5. 冒泡排序 6. 快速排序 7. 归并排序 8. 基数排序
Java排序算法 一.冒泡排序及其实现 二.希尔排序及其实现 三.插入排序及其实现
Java排序 四.插入排序及其实现 五.快速排序及其实现 六.合并排序及其实现
java 实现归并排序,有代码实现,复杂度分析,基本步骤,适合初学者吧,
java排序 七.计数排序及其实现 八.基数排序及其实现 九. 桶排序及其实现 十. 堆排序及其实现 十一.二叉树排序及有序集合 十二.利用集合的4种排序排序方式
主要介绍了Java实现拖拽列表项的排序功能,非常不错,具有参考借鉴价值,需要的朋友可以参考下
实现PageRank算法最为简单的代码,此代码使用java编写,适合与学习搜索引擎了解pageRank算法的初学者。
快速排序算法的Java实现。下载后把Package信息稍作修改即可运行。
堆排序7.java 使用java实现的堆排序堆排序7.java 使用java实现的堆排序堆排序7.java 使用java实现的堆排序堆排序7.java 使用java实现的堆排序堆排序7.java 使用java实现的堆排序堆排序7.java 使用java实现的堆排序堆...
Java ip 地址排序Java ip 地址排序Java ip 地址排序Java ip 地址排序
Java实现堆排序不是C,Java实现堆排序不是C,Java实现堆排序不是C,Java实现堆排序不是C
Java实现计数排序不是C,Java实现计数排序不是C,Java实现计数排序不是C