选择排序的讲解
import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Scanner; public class SortSelect { public static void main(String[] args) { Scanner reader = new Scanner(System.in); int number = reader.nextInt(); int[] numbers = new int[number]; for (int i = 0; i < number; i++) { numbers[i] = reader.nextInt(); } for (int i = 0; i < numbers.length; i++) { for (int j = i+1; j < numbers.length; j++) { int temp; if (numbers[i]>numbers[j]) { temp = numbers[i]; numbers[i] = numbers[j]; numbers[j]=temp; } } } for (int i = 0; i < numbers.length; i++) { System.out.print(numbers[i]+"\t"); } } }
原理:给你一列数据,让你比较它们的大小,你会该怎么比较呐,选择排序的做法就是两个for循环,其实就相当于把这列数据放入一个容器中,然后复制一份这列数据,就如同有两组一样的数据,实现每次第一组数据的第一个元素与第二组数据的第一个元素进行比较,就相当于一组数据的第一个数据与第二个数据的比较。比较后依据条件判断是否做出位置的改变。
选择排序的基本思路就是一列数,比较这列数,进行两两比较,前一个的数如果大于后一个数就交换位置
第一个用于循环是为了把这个数列输出出来,第二个用于循环是为了把从第一个为循环开始的数的后一个数开始到结尾输出出来

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
n阶贝塞尔曲线绘制(C/C#)
原文: n阶贝塞尔曲线绘制(C/C#) 贝塞尔是很经典的东西,轮子应该有很多的。求n阶贝塞尔曲线用到了德卡斯特里奥算法(De Casteljau’s Algorithm) 需要拷贝代码请直接使用本文最后的例程,文章前面的大部分代码都不是最佳实践,是在编程过程中的摸索(走过的弯路),不过这些示范对笔者今后写算法启发很大。 要完成的功能是根据起点,终点和控制点,绘制n阶贝塞尔曲线 首先看n阶贝塞尔曲线的公式 公式中用了组合数,大数组合数计算也有算法: 简言之就是把 大数乘以大数除以大数 这个过程转为单纯的累加。 下面来说明一下这个组合数计算的优化过程: 100000 / 100 = 1000 500 + 500 = 1000 上面两个式子计算结果是相等的,但是如果编程实现, 第一个式子就必须使用至少一个Uint32 来存放100000; 但是第二个式子只需要Uint16类型就可以完成整个计算。 通过变换计算方式,可以通过计算机有限的数据大小计算尽可能大的结果。 贝塞尔曲线也是一种插值算法,根据起点和终点,通过中间的控制点,插值计算出整条路径 现代的x86,硬件计算浮点都是先转换为doubl...
- 下一篇
Python开发工程师告诉你正确如何上手数据可视化,赶紧围观!
数据可视化 1. 安装 Matplotlib 在Linux系统中安装matplotlib Ubuntu17.10内置Python2版本和Python3版本,可以采用下面的方式安装Matplotlib。 $ sudo apt-get install python3-matplotlib 如果你使用的是Python 2.7,执行如下命令: $ sudo apt-get install python-matplotlib 如果你安装了pip 就可以使用下面的方式安装: $ pip install matplotlib 如果你的安装比较慢,可以尝试这种方式来安装: $ pip3 install matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple 常用的国内源地址有: 阿里云 http://mirrors.aliyun.com/pypi/simple/ 豆瓣(douban) http://pypi.douban.com/simple/ 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/ 中国科学技...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS关闭SELinux安全模块
- CentOS8编译安装MySQL8.0.19
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7,CentOS8安装Elasticsearch6.8.6