冒泡优化测试(1百万元素排序)

简介: 优化:去除排序完成后的,轮数空转时间(bubblingSortx方法) 冒泡排序及优化代码:冒泡排序和优化 测试代码: package com.ts.w;import java.util.ArrayList;import java.util.Arrays;import java.util.List;public class Array1millionSize { p

优化:去除排序完成后的,轮数空转时间(bubblingSortx方法)

冒泡排序及优化代码:冒泡排序和优化

测试代码:

package com.ts.w;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Array1millionSize {

	public static int [] getList(){
		int rdNum = (int) (Math.random() * 100);
//		List<Integer> list = new ArrayList<Integer>(1000000);
//		for(int i = 0; i < 1000000; i++){
//			list.add(i+rdNum);
//		}
		int [] intArray = new int[1000000];
		for(int i = 0; i < 1000000; i++){
			intArray[i] = i + rdNum;
		}
		return intArray;
		
	}
	
	public static void main(String[] args) {
		long sTime = System.currentTimeMillis();
		int [] list = getList();
		long eTime = System.currentTimeMillis();
		System.out.println("生成1百万int数组的time:"+(eTime - sTime)+"ms");
//		int listLen = list.length;
//		long sTime0 = System.currentTimeMillis();
//		for(int i = 0;i < listLen; i++){
//			System.out.println(list[i]);
//		}
//		long eTime0 = System.currentTimeMillis();
//		System.out.println("1百万int数组打印时间time0:"+(eTime0 - sTime0)+"ms");
		int [] temp1 = list;
		int [] temp2 = list;
		long sTime1 = System.currentTimeMillis();
		int [] temp3 = BubblingSort.bubblingSort(temp1);
		long eTime1 = System.currentTimeMillis();
		System.out.println("bubblingSort方法排序时间1time:"+(eTime1 - sTime1)+"ms");
		long sTime2 = System.currentTimeMillis();
		int [] temp4 = BubblingSort.bubblingSortx(temp2);
		long eTime2 = System.currentTimeMillis();
		System.out.println("bubblingSortx方法排序时间2time:"+(eTime2 - sTime2)+"ms");
		if(Arrays.equals(temp3, temp4)){
			System.out.println("内容相同数组");
		}else{
			System.out.println("不是内容相同数组");
		}
	}
}


测试结果:

生成1百万int数组的time:5ms
bubblingSort排序中……
bubblingSort方法排序时间1time:143847ms
bubblingSortx排序中……
bubblingSortx方法排序时间2time:3ms
内容相同数组

注:在两个方法开始时,加入"排序……",等待显示!

可见空转确实有很长时间!(暂时,不确定,计算机对重复操作的处理!)

目录
相关文章
|
23天前
|
安全 Linux 测试技术
提升龙蜥内核测试能力!探究持续性模糊测试优化实践
清华大学软件学院对Anolis OS使用靶向模糊测试方法将测试工作引向修改的代码,进而提高对业务代码的测试能力。
|
3月前
|
存储 测试技术 持续交付
自动化测试与持续集成/持续交付(CI/CD):优化软件开发流程的利器
自动化测试与持续集成/持续交付(CI/CD)是现代软件开发中至关重要的环节,通过将自动化测试与持续集成/持续交付相结合,可以实现开发流程的高效优化,提高软件质量和交付速度。本文将探讨自动化测试与CI/CD的概念、原理及其在软件开发中的重要性,以及如何实施这些技术以提升团队的协作效率和软件交付质量。
58 1
|
5月前
|
网络协议 安全 Linux
12. 测试搭建百万并发项目
12. 测试搭建百万并发项目
72 0
|
3月前
|
监控 数据可视化 Java
jvm性能调优实战 - 31从测试到上线_如何分析JVM运行状况及合理优化
jvm性能调优实战 - 31从测试到上线_如何分析JVM运行状况及合理优化
53 1
|
1月前
|
敏捷开发 分布式计算 测试技术
深入理解软件测试中的自动化框架选择与优化策略
【2月更文挑战第29天】 在软件开发的生命周期中,测试环节扮演着至关重要的角色。随着敏捷开发和持续集成的普及,自动化测试成为确保软件质量和加快产品上市速度的关键手段。本文将探讨在构建自动化测试框架时面临的挑战,分析不同类型自动化框架的特点及其适用场景,并提出一系列优化策略,旨在帮助测试工程师提高测试效率,确保测试结果的准确性。
21 0
|
1月前
|
敏捷开发 分布式计算 数据管理
探索自动化测试在持续集成环境中的优化策略
【2月更文挑战第18天】 在高速迭代的软件开发过程中,自动化测试已成为确保产品质量和加快交付速度的关键。本文深入探讨了自动化测试在持续集成(CI)环境中面临的挑战,并提出了一系列优化策略。通过对测试流程、工具选择和测试数据管理等方面的细致分析,旨在为软件测试人员提供实用的改进方法,以提高自动化测试的效率和准确性。
H8
|
8月前
|
自然语言处理 物联网 Unix
全网最佳IoT命令行超级工具箱|帮你轻松解决百万物联网设备测试和联调
作为一个物联网开发和学习人员,IoT设备协议的测试联调是工作中很重要的一环!我有很多时刻都想拥有一个能集成常见物联网协议的客户端工具可供使用。经过我一通查找,发现和我拥有相同问题的人不在少数。 不仅仅是IoT开发者,包括云厂商、网络运营商都有相同烦恼: 开源物联网平台Thingsboard: coap -> coap.js(需要安装node); 移动OneNET平台: mqtt -> mqtt.fx(几年没更新了); 电信AEP平台:自定义TCP协议 -> sokit工具(只支持windows); 阿里云物联网平台: Nb-IoT协议 -> 需要到电信或移动平台上进行测试; 作者:穆书伟
H8
287 0
|
8月前
|
Java Spring
优化测试执行顺序:解析 Java 中的 @Order 注解
在软件开发中,测试的执行顺序有时候是至关重要的,尤其是在涉及依赖关系或状态共享的情况下。Java 中的 `@Order` 注解为开发人员提供了一种简便的方式来控制测试方法的执行顺序,确保测试按照指定的顺序运行。本文将带您深入探索 Java 中的 `@Order` 注解,揭示其作用、用法以及在实际开发中的应用场景。
|
8月前
|
前端开发 算法 JavaScript
【简历优化平台开发教程-12】测试用模版简历!
【简历优化平台开发教程-12】测试用模版简历!
|
11月前
|
存储 缓存 编解码
一文搞定Netty,打造单机百万连接测试!3
一文搞定Netty,打造单机百万连接测试!

热门文章

最新文章