java数组排序(冒泡、直排)反转
package lianxi; public class maopao {
public static void main(String[] args){
int[] i=new int[]{45,67,54,35,26,76,85};
for(int a=0;a<i.length;a++){
for(int b=0;b<i.length;b++){
if(i[a]<i[b]){
int temp=i[a];
i[a]=i[b];
i[b]=temp; }
}
}go(i);
}
public static void go(int[] l){
for(int o=0;o<l.length;o++){
System.out.print(l[o]+" ");
}
}
}
冒泡排序就是用两个for循环第一层循环每一次循环拿一个数然后用第二个循环跟数组中的其他数进行比较,直到循环结束,排序就完成了。
package day24;
//直接排序
public class paixu {
public static void main(String[] args){
int[] i=new int[]{45,35,67,86,46,25,47,37,85};// for(int m=0;m<i.length;m++){
int indexmax=m;
for(int n=m+1;n<i.length;n++){
if(i[indexmax]<i[n]){
indexmax=n;//把循环中第一个索引换成了最大值的索引
}
}
int temp=i[m];
i[m]=i[indexmax];//把最大值赋给循环中第一个值。
i[indexmax]=temp;//把第一个值放在其他位置
}
xunhuan(i);
} public static void xunhuan(int[] t){
for (int l=0;l<t.length;l++){
System.out.println(t[l]);}
}}
直接排序就是直接拿数去比较完就放到应该放到的位置上,直到循环结束
package lianxi;
//反转排序
public class fanzhuan {
public static void main(String[] args){
int[] i=new int[]{5,4,8,3,9,5,23};
int lm=i.length;
for(int a=0;a<lm/ 2;a++){
int temp=i[i.length-a-1];
i[i.length-a-1]=i[a];
i[a]=temp;
}
go(i);
}
public static void go(int[] s){
for(int b=0;b<s.length;b++){
System.out.println(s[b]);
}
}
}
数组的反转,让循环的次数小于数组长度的一半,然后让循环次数对应的索引值的数组值跟对着的数交换就好了。
package lianxi; public class ShuZu {
String[] xzName = { "白羊", "金牛", "双子", "巨蟹", "狮子", "处女", "天秤", "天蝎", "射手", "摩羯", "水瓶", "双鱼" };
String[] xzDate = { "03月21日─04月20日", "04月21日─05月20日", "05月21日─06月21日", "06月22日─07月22日", "07月23日─08月22日",
"08月23日─09月22日", "09月23日─10月22日", "10月23日─11月21日", "11月22日─12月21日", "12月22日─01月19日", "01月20日─02月18日",
"02月19日─03月20日" }; } package lianxi; import java.util.Scanner; public class TestShuzu {
public static void main(String[] args){
ShuZu sz=new ShuZu();
Scanner sc=new Scanner(System.in);
System.out.println("请输入星座名字,并用逗号隔开");
String X_name=sc.nextLine(); if(X_name.length()==2){
for(int i=0;i<sz.xzName.length;i++){
if(X_name.equals(sz.xzName[i])){//属性.equals就是指的属性的值
System.out.print(sz.xzDate[i]);
}
}
} else if(X_name.length()>2){
String[] y=X_name.split(",");
for(int w=0;w<y.length;w++){
String ow = null;
for(int q=0;q<sz.xzName.length;q++){
if(y[w].equals(sz.xzName[q])){ ow=sz.xzDate[q];
}
} System.out.println(ow);
} }
sc.close();
}
}
输入星座名,输出对应的月份,可以输入多个星座查询,主要是得想到string可以用split方法分割成几个数组
java数组排序(冒泡、直排)反转的更多相关文章
- java基础入门之数组排序冒泡法
public class ArrayTest03{ /* Name:数组排序,冒泡法 Power by :Stuart Date:2015-4-23*/ public static void main ...
- Java数组排序
Java数组排序Arrays.sort,以及Comparator接口的用法 有的时候需要对数组里的element进行排序.当然可以自己编写合适的排序方法,但既然java包里有自带的Arrays.sor ...
- Java写 插入 选择 冒泡 快排
/** * Created by wushuang on 2014/11/19. */ public class SortTest { @Test public void mainTest() { i ...
- java数组排序(插入排序、冒泡排序、选择排序)与递归 代码示例
import java.util.Scanner; public class OrderBy { public static void main(String[] args) { // Scanner ...
- Java实现一个字符串的反转
Java小程序实现字符串的反转: 方法一: public class reverseString { public static void main(String[] args) { String s ...
- Java Web实现IOC控制反转之依赖注入
控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心. 控制反转一般分为两种类型,依赖注入 ...
- Java温故而知新-冒泡法排序
冒泡法排序是各种初学者在学习数组与循环结构时都会练习的一种简单排序算法. 冒泡法的精髓在于比较相邻的两个元素,较大的元素会不断的排到队伍后面去,就像水里的泡泡一样不断向上跑. 想像一下倒在一个透明玻璃 ...
- Java数组排序基础算法,二维数组,排序时间计算,随机数产生
import java.util.Arrays; //包含Arrays import java.util.Random; public class HelloWorld { public static ...
- [Java]数组排序-选择排序 冒泡排序 插入排序
1 选择排序 原理:a 将数组中的每个元素,与第一个元素比较 如果这个元素小于第一个元素, 就将这个 两个元素交换. b 每轮使用a的规则, 可以选择出 ...
随机推荐
- python基础操作_元组_字典操作
#元组'''元组是不可变的列表,不能改.取值和列表一样'''tp=(1,2,3)tp1=('127.0.0.1','3307')#元组只有count 和index两个方法.lis=['127.0.0. ...
- javacpp-opencv图像处理3:使用opencv原生方法遍历摄像头设备及调用(增加实时帧率计算方法)
javaCV图像处理系列: javaCV图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体.位置.大小.粗度.翻转.平滑等操作 javaCV图像处理之2:实时视频添加图片水 ...
- 常见的Message Queue应用场景
在最近的工作的里面有同事问到我说,为什么我们需要一个Message Queue,Message Queue可以在哪些地方用,经过一些整理,大概能找到这些点,假如你有这方面的要求,也可以考虑使用Mess ...
- Function.prototyoe.call.apply
刚刚在一个群里看到有人问 Function.prototype.call.apply(obj, args) 如何理解,觉得挺有意思的.刚开始被惯性思维干扰了,一直都是 call 和 apply 分开用 ...
- vijos1325 桐桐的糖果计划
Description 桐桐是一个快乐的小朋友,他生活中有许多许多好玩的事,让我们一起来看看吧-- 桐桐很喜欢吃棒棒糖.他家处在一大堆糖果店的附近. 但是,他们家的区域经常出现塞车.塞人等情况,这导致 ...
- 【知识整理】这可能是最好的RxJava 2.x 入门教程(二)
这可能是最好的RxJava 2.x入门教程系列专栏 文章链接: 这可能是最好的RxJava 2.x 入门教程(一) GitHub 代码同步更新:https://github.com/nanchen22 ...
- XManager5连接CentOS7
XManager5连接CentOS6的方法已经行不通了,那么如何用XManager5连接CentOS7 从Xmanger官网博客得知: "Gnome in CentOS 7 tries to ...
- 关于MATLAB收集人工鼠标移动轨迹的坐标
首先需要设计一个用户图形界面的函数,这个图形界面被用于在其上面绘制轨迹并记录当时的坐标. 该回响函数应包含:鼠标按下时,鼠标移动时,和鼠标释放时的反应命令.当然网上有有相关的开源 程序,但是有缺陷(该 ...
- (6)javascript的程序控制结构及语句-----(1)条件判断
程序控制结构及语句 编程就是将现实应用,转换为程序能够读得懂的语法语句.Javascript编程中对程序流程控制主要是通过条件判断语句.循环控制语句及continue.break来完成的,其中条件判断 ...
- Swift初始化空字符串
为了构造一个很长的字符串,可以创建一个空字符串作为初始值.可以将空的字符串字面量赋值给变量,也可以初始化一个新的String 实例: var emptyString = "" // ...