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的规则, 可以选择出 ...
随机推荐
- 作为前端,我为什么选择 Angular 2?
转自:https://sanwen8.cn/p/2226GkX.html 没有选择是痛苦的,有太多的选择却更加痛苦.而后者正是目前前端领域的真实写照.新的框架层出不穷:它难吗?它写得快吗?可维护性怎样 ...
- window maven批量删除.lastUpdated文件
当下载网络上的jar包 网络不通 中途中断 会产生.lastUpdated,maven就不在从网上下载jar包了 很烦 ~~~ 执行下面的批处理程序即可 @echo off set REPOSITOR ...
- HTML标签类型及特点
关键词:块级元素 行级元素 行内块元素 一. 概述 HTML(Hyper Text Markup Language )作为一种标记语言,网页所有的内容均书写在标签内部,标签是 ...
- 用GAN生成二维样本的小例子
同步自我的知乎专栏:https://zhuanlan.zhihu.com/p/27343585 本文完整代码地址:Generative Adversarial Networks (GANs) with ...
- EntityFramework Core迁移时出现数据库已存在对象问题解决方案
前言 刚开始接触EF Core时本着探索的精神去搞,搞着搞着发现出问题了,后来就一直没解决,觉得很是不爽,借着周末好好看看这块内容. EntityFramework Core迁移出现对象在数据库中已存 ...
- ThinkPHP 前台视图实现类似于Yii的自动验证
ThinkPHP model类其实自带这个功能 可以写一个基础类继承Model 模型层代码: <?php namespace Manager\Model; use Think\Model; cl ...
- ASP.NET Core配置Kestrel 网址Urls
ASP.NET Core中如何配置Kestrel Urls呢,大家可能都知道使用UseUrls() 方法来配置. 今天给介绍全面的ASP.NET Core 配置 Urls,使用多种方式配置Urls.让 ...
- mysql 转义字符
在用户提交表单的时候,有的用户会提交一些特殊字符,比如单引号双引号,此时,如果直接按正常字符串插入数据库的话,可能会出现无法正确插入数据库 PDO::quote 转义mysql语句中的单引号和双引号 ...
- smarty获取变量的两种方式
从上一篇随笔中,我们知道smarty可以通过assign()的方法注册变量,从而在前段读取变量:我们也可以从配置文件中获取变量,来具体看一下: 1.在configs文件夹中建一个test.conf文件 ...
- My new life
第一次开始写博客,也是在学长的建议下想要正式的写的.有点小激动,这篇博客标志着一个新的开始,它将记录下我学习编程的生活,也象征着我将向着自己渴望的方向发展.不过这篇博客就真的是一篇随笔哈哈. 希望我的 ...