Java修炼——插入排列,选择排列
话不多说,直接上代码:
package com.bjsxt.Array;
import java.util.Arrays;
public class TestSort {
//选择排序
//插入排列
public static void main(String[] args) {
int [] arr= {12,45,78,89,56,23,16,48,762};
TestSort.selectSort(arr);
TestSort.insertSort(arr);
}
public static void selectSort(int arr[]) {
int temp;
for (int i = 0; i < arr.length-1; i++) {
//认为第一个是最小值
int minIndex=i;
for (int j = i+1; j < arr.length; j++) {
if (arr[minIndex]>arr[j]) {
//修改最小值下标
minIndex=j;
}
}
if (i!=minIndex) {
temp=arr[i];
arr[i]=arr[minIndex];
arr[minIndex]=temp;
}
}
System.out.println("选择排列:"+Arrays.toString(arr));
}
public static void insertSort(int arr[]) {
int i,j;
for (i = 1; i< arr.length; i++) {
int temp=arr[i];
for(j=i ; j>0 && temp<arr[j-1] ; j--) {
arr[j]=arr[j-1];
}
arr[j]=temp;
}
System.out.println("插入排列:"+Arrays.toString(arr));
}
}
Java修炼——插入排列,选择排列的更多相关文章
- java 基础排序(冒泡、插入、选择、快速)算法回顾
java 基础排序(冒泡.插入.选择.快速)算法回顾 冒泡排序 private static void bubbleSort(int[] array) { int temp; for (int i = ...
- Java MyBatis 插入数据库返回主键
最近在搞一个电商系统中由于业务需求,需要在插入一条产品信息后返回产品Id,刚开始遇到一些坑,这里做下笔记,以防今后忘记. 类似下面这段代码一样获取插入后的主键 User user = new User ...
- Java 批量插入数据(Oracle)
//批量添加20000条数据用时8秒. try { String url = "jdbc:oracle:thin:@IP:1521:orcl"; // orcl为数据库的SI ...
- Java 第三章 选择结构1
选择结构(一) 会使用基本的 if 选择结构 掌握逻辑运算符,掌握多重 if 选择结构 , 掌握嵌套 if 选择 结构 为什么需要 if 选择结构 例如: 如果张浩的 java 考试成绩大于 98分, ...
- [原]Java修炼 之 基础篇(二)Java语言构成
上次的博文中Java修炼 之 基础篇(一)Java语言特性我们介绍了一下Java语言的几个特性,今天我们介绍一下Java语言的构成. 所谓的Java构成,主要是指Java运行环境的组成, ...
- Java版冒泡排序和选择排序
一.理解说明 1.理解和记忆 冒泡排序:依次定位数组元素,每次只和相邻的且符合条件的元素交换位置. 选择排序:依次在数组的每个位置,通过逐个对比选择出最大或最小的元素. 2.知识点说明 (1)数组是引 ...
- 我JAVA修炼之路
今天起,我会不定期更新我的java修炼之路, 2017.7.10,星期一 我参见了河南青云的培训班,这一天是我们的开班典礼. 我会不定期的总结我的学习笔记,大家喜欢的可以看看,不喜勿喷. 写代码: 1 ...
- 038 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 05 案例演示switch结构-星期的表示案例以及总结
038 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 05 案例演示switch结构-星期的表示案例以及总结 本文知识点:案例演示switch结构并对sw ...
- 037 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 04 switch结构
037 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 04 switch结构 本文知识点:Java中的switch结构 选择结构分类 选择结构只有如下2种 ...
随机推荐
- vue , debounce 使用
有时候不想直接在methods中的方法前面加debounce, getFullName: debounce(function() { console.log('my fullname is chent ...
- css3 mask遮罩动画(照明灯效果)
<pre><!DOCTYPE html><html lang="en"><head><meta charset="U ...
- 使用websocketpp进行websocket通信
websocketpp介绍 websocketpp是一个只有头文件的支持websocket协议的C++开源库,支持websocket客户端和服务器功能,网络传输模块基于boost::asio 提供 s ...
- 瞎折腾实录:构建 Armel 版本的 .NET Core 教程和资料资源
目录 首先我要说明,我失败了~ 我把我的进度和经验放出来,希望能够帮助别人完成编译工作~ 背景:最近接手一个华为某型号的嵌入式设备,需要在上面搭建 .NET Core 环境. 设备是 Armel 架构 ...
- 每天3分钟操作系统修炼秘籍(14):IO操作和DMA、RDMA
点我查看秘籍连载 I/O操作和DMA.RDMA 用户进程想要执行IO操作时(例如想要读磁盘数据.向磁盘写数据.读键盘的输入等等),由于用户进程工作在用户模式下,它没有执行这些操作的权限,只能通过发起对 ...
- (三)初识NumPy(数据CSV文件存取和多维数据的存取)
本章主要介绍的是数据的CSV文件存取和多维数据的存取. 一.数据的CSV文件存取 1.CSV的写文件: np.savetxt(frame, array, fmt='%.18e', delimiter= ...
- 安装Fedora后
更新操作系统版本: https://fedoraproject.org/wiki/DNF_system_upgrade 靠谱: 设置ssh:ssh生成公钥私钥.默认root(.ssh/confi ...
- Linux系统时间\硬件时间(date、tzselect、clock、hwclock、ntpdate)
1.系统时间和硬件时间 在Linux中有硬件时钟与系统时钟两种时钟.硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟.系统时钟则是指kernel中的时钟.所有Linux相关指令与函 ...
- java课笔记
http://127.0.0.1:8088/ http://127.0.0.1:8088/test/index.jsp http://127.0.0.1:8088/test/show 用户 (请求) ...
- 《算法导论中文版》PDF 下载
电子版仅供预览及学习交流使用,下载后请24小时内删除,支持正版,喜欢的请购买正版书籍 在有关算法的书中,有一些叙述非常严谨,但不够全面:另一些涉及了大量的题材,但又缺乏严谨性.本书将严谨性和全面性融为 ...