用选择的方式对数组进行排序,并写出对应的优化后的代码实现。(重点写思路、原理)
来源:互联网 发布:ubuntu安装tar.gz软件 编辑:程序博客网 时间:2024/06/10 05:46
class s1
{
/*
选择排序的比较方式:首先选择一个位置,让该位置上的数与下一个位置上的数进行比较,两者比较后取最值占取该位置,
并用该位置上的值继续去和下一个位置上的值继续比较。
原理:如果第一次选择了0角标上的值,那么第一次循环比较后,最值会出现在0角标的位置上。
*/
public static void selectSort(int arr[])
{
for (int x=0;x<arr.length-1;x++)
{
for (int y=x+1;y<arr.length;y++)
{
if (arr[x]>arr[y])
{
swap(arr,x,y);
}
}
}
}
public static void swap(int arr[],int a,int b)
{
int temp = arr[a];
arr[a] = arr[b];
arr[b] = temp;
}
public static String arrayToString(int arr[])
{
String str="{";
for (int x=0;x<arr.length;x++)
{
if (x!=arr.length-1)
{
str=str+arr[x]+",";
}
else
str=str+arr[x]+"}";
}
return str;
}
public static void main(String[] args)
{
int arr[]={9,2,4,8,5,6,7,3,1};
selectSort(arr);
System.out.print(arrayToString(arr));
}
}
{
/*
选择排序的比较方式:首先选择一个位置,让该位置上的数与下一个位置上的数进行比较,两者比较后取最值占取该位置,
并用该位置上的值继续去和下一个位置上的值继续比较。
原理:如果第一次选择了0角标上的值,那么第一次循环比较后,最值会出现在0角标的位置上。
*/
public static void selectSort(int arr[])
{
for (int x=0;x<arr.length-1;x++)
{
for (int y=x+1;y<arr.length;y++)
{
if (arr[x]>arr[y])
{
swap(arr,x,y);
}
}
}
}
public static void swap(int arr[],int a,int b)
{
int temp = arr[a];
arr[a] = arr[b];
arr[b] = temp;
}
public static String arrayToString(int arr[])
{
String str="{";
for (int x=0;x<arr.length;x++)
{
if (x!=arr.length-1)
{
str=str+arr[x]+",";
}
else
str=str+arr[x]+"}";
}
return str;
}
public static void main(String[] args)
{
int arr[]={9,2,4,8,5,6,7,3,1};
selectSort(arr);
System.out.print(arrayToString(arr));
}
}
- 用选择的方式对数组进行排序,并写出对应的优化后的代码实现。(重点写思路、原理)
- 用冒泡的方式对数组进行排序, 并写出对应的优化后的代码实现。(重点写思路、原理)
- 数组排序,并返回排序后的数组对应原数组的下标(c语言)
- 随机数初始化数组然后用选择法(三种,细微的区别)对数组进行排序
- 对数组进行排序,并记录下标值的Java实现
- java实现数组的冒泡排序、选择排序代码
- 对一个数组元素排序,对应的数组元素排序
- C++ 对数组进行排序并返还对应索引号
- 写一主函数输入一数组,写一子函数实现对该数组的冒泡排序并输出。
- join的实现原理与优化思路
- Join的实现原理及优化思路
- 让无序数组元素进行排序,排序完后将排序后元素对应的原先元素的位置输出
- TreeSet对元素进行排序实现的两种方式
- PHP对二维数组进行双条件排序的实现
- 选择法:进行数组的排序
- 利用随机类生成数组,并用冒泡排序以及选择排序对不同数组的元素进行从小到大的排序
- 一个用VB实现的对任意字符串进行排列并排序的函数
- JAVA中对一维数组排序的方法(在快速排序上进行的优化)
- 银行
- GTK编程基础---组装盒,表组装
- java socket编程
- Concurrent Programming 3 : Language Features (OC)
- [zz]IEEE 高级会员
- 用选择的方式对数组进行排序,并写出对应的优化后的代码实现。(重点写思路、原理)
- awk总结
- 没有攻不破的防守,也没有防不住的进攻 (有空了再写)
- 并查集模板
- jquery限定文本框只能输入数字(整数和小数)
- Analyze clauses and dbms_stats package(二)
- Ant实现Java项目的自动构建和部署
- 折半查找
- 炸金花