JavaScript
function selectSort(ary) {
var i, j, k, temp;
var len = ary.length;
for(i=0; i<len; i++) {
k = i;
// 找出最小的元素索引
for(j=i+1; j<len; j++) {
if(ary[k] > ary[j]) {
k = j;
}
}
temp = ary[i];
ary[i] = ary[k];
ary[k] = temp;
}
return ary;
}
// var ary = [5,4,3,2,1];
// console.log(selectSort(ary));
Java
public class Test {
public static void selectSort(int[] ary) {
int i, j, k, temp;
int len = ary.length;
for(i=0; i<len; i++) {
k = i;
for(j=i+1; j<len; j++) {
if(ary[k] > ary[j]) {
k = j;
}
}
temp = ary[i];
ary[i] = ary[k];
ary[k] = temp;
}
}
public static void main(String[] args) {
int[] ary = {5,4,3,2,1};
Test.selectSort(ary);
for(int it : ary) {
System.out.println(it);
}
}
}
C
void selectSort(int ary[], int len) {
int i, j, k, temp;
for(i=0; i<len; i++) {
k = i;
// 找出最小的元素索引
for(j=i+1; j<len; j++) {
if(ary[k] > ary[j]) {
k = j;
}
}
temp = ary[i];
ary[i] = ary[k];
ary[k] = temp;
}
}
main() {
int i;
int ary[] = {5,4,3,2,1};
selectSort(ary, 5);
for(i=0; i<5; i++) {
printf("%d", ary[i]);
}
}
分享到:
相关推荐
直接选择排序(Straight Select Sorting) 也是一种简单的排序方法,它的基本思想是:第一次从R[0]~R[n-1]中选取最小值,与R[0]交换,第二次从R[1]~R[n-1]中选取最小值,与R[1]交换,....,第i次从R[i-1]~R[n-1]中选取...
直接选择排序-flash演示 可自己输入测试数据...
数据结构课程设计直接选择排序 数据结构课程设计直接选择排序 数据结构课程设计直接选择排序 数据结构课程设计直接选择排序 数据结构课程设计直接选择排序 数据结构课程设计直接选择排序 数据结构课程设计直接选择...
关于数据结构,是C++语言实现的,能实现直接选择排序、希尔排序
直接插入排序 冒泡排序 快速排序 直接选择排序 堆排序 二路归并排序 C#源代码 使用C#实现的数据结构中的排序算法
printf("\t4: 直接选择排序\n"); printf("\t5: 堆排序\n"); printf("\t6: 归并排序\n"); printf("\t7: 希尔排序\n"); printf("\t***************************\n"); scanf("%d",&i); //输入整数1-7,选择排序...
初学C语言必须掌握的一些基础知识,包括直接选择排序、直接插入排序、冒泡排序、快速排序。 查找算法,二叉排序树,二叉树层次遍历,二叉树非递归遍历,二叉树的建立,关键字匹配查找等。 如有问题,可随时私信。 ...
对已给定的数组进行简单的直接选择排序。 直接选择排序的基本思想: n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果: ①初始状态:无序区为R[1..n],有序区为空。 ②第1趟排序 在无序区R[1.....
直接插入排序、希尔排序、冒泡排序、直接选择排序、堆排序、归并排序
Java代码-排序-直接插入排序、希尔排序、直接选择排序、冒泡排序、堆排序、快速排序、归并排序中部分排序以及算法-贪心法,大家可以将源码下载下来进行学习,附带着注释和解释,有不理解的可以找博主一起探讨,共同...
直接插入排序 选择排序 堆排序 归并排序 快速排序 冒泡排序等七种排序方法
随机生成小于5000的数 根据操作通过不同的方法排序 泡泡排序 直接插入排序 折半插入排序 希尔排序 直接选择排序 统计时间 比较次数和交换次数 保存为txt文件
六种内部排序算法比较:直接插入排序、希尔排序、冒泡排序、快速排序、选择排序、堆排序。包含实验报告和源代码设计。
提供五种排序算法的C++实现方法,输入(待排序元素个数、排序码上界(采用随机生成数组方式)),可选择输出(原始数组、排序后数组、原始数组有序度和无序度、排序过程中数据比较次数与数据移动次数、数组中出现...
实现直接插入排序,二分法插入排序、希尔排序,冒泡排序,快速排序,直接选择排序的算法.pdf
直接选择排序.zip
基于双链表的直接插入排序、直接选择排序、冒泡排序 里面包含函数的实现和调用,直接可以拿来用,c/c++语言实现 主要是老师要求搞这个用链表排序,真是服了,链表它能排序吗?这下好了,要输数组了,输完数组输map了...
js实现直接选择排序
直接插入排序 直接插入排序(Straight Insertion Sort)是一种简单且古老的排序算法,其基本思想是将一个记录插入到已经排好序的有序表中,从而得到一个新的、记录数增1的有序表。12 直接插入排序的算法过程如下...