冒泡优化测试(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
内容相同数组

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

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

目录
相关文章
|
13天前
|
监控 测试技术 持续交付
软件测试中的性能瓶颈分析与优化策略
性能瓶颈,如同潜伏于软件深处的隐形障碍,悄然阻碍着系统的流畅运行。本文旨在揭示这些瓶颈的形成机理,剖析其背后的复杂成因,并汇聚一系列针对性的优化策略,为软件开发者提供一套系统性的解决方案。
|
4月前
|
监控 测试技术 UED
软件测试中的性能瓶颈定位与优化策略
在软件开发的生命周期中,性能测试是确保产品质量的关键步骤之一。本文深入探讨了性能测试的重要性,并提出了一套系统的性能瓶颈定位与优化策略。通过分析现代软件系统中常见的性能问题,结合最新的研究成果和行业最佳实践,文章详细介绍了如何运用科学严谨的方法来识别和解决性能瓶颈。此外,本文还强调了逻辑严密的问题分析框架和数据驱动的决策过程对于提升软件性能的重要性。
|
19天前
|
监控 算法 测试技术
软件测试中的性能瓶颈分析与优化策略
本文旨在深入探讨软件测试过程中性能瓶颈的识别与优化方法。通过对性能瓶颈的概念、分类及其成因进行分析,结合实际案例,提出一套系统的性能瓶颈诊断流程和针对性的优化策略。文章首先概述了性能瓶颈的基本特征,随后详细介绍了内存泄漏、资源竞争、算法效率低下等常见瓶颈类型,并阐述了如何通过代码审查、性能监测工具以及负载测试等手段有效定位问题。最后,结合最佳实践,讨论了代码级优化、系统配置调整、架构改进等多方面的解决措施,旨在为软件开发和测试人员提供实用的性能优化指导。
|
28天前
|
关系型数据库 MySQL 测试技术
《性能测试》读书笔记_数据库优化
《性能测试》读书笔记_数据库优化
24 7
|
12天前
|
缓存 监控 算法
软件测试中的性能瓶颈定位与优化策略
性能瓶颈,如同隐藏在系统深处的“拦路虎”,悄无声息地制约着软件的表现。本文将揭示如何通过一系列科学方法,识别并消除这些障碍,从而显著提升软件性能,确保用户享受到流畅无阻的数字体验。
|
2月前
|
存储 人工智能 自然语言处理
知识库优化增强,支持多种数据类型、多种检索策略、召回测试 | Botnow上新
Botnow近期对其知识库功能进行了全面升级,显著提升了数据处理能力、检索效率及准确性。新版本支持多样化的数据格式,包括PDF、Word、TXT、Excel和CSV等文件,无需额外转换即可直接导入,极大地丰富了知识来源。此外,还新增了细致的文本分片管理和编辑功能,以及表格数据的结构化处理,使知识管理更为精细化。 同时,平台提供了多种检索策略,包括混合检索、语义检索和全文检索等,可根据具体需求灵活选择,有效解决了大模型幻觉问题,增强了专业领域的知识覆盖,从而显著提高了回复的准确性。这些改进广泛适用于客服咨询、知识问答等多种应用场景,极大提升了用户体验和交互质量。
61 4
|
2月前
|
XML JavaScript 测试技术
Web自动化测试框架(基础篇)--HTML页面元素和DOM对象
本文为Web自动化测试入门指南,介绍了HTML页面元素和DOM对象的基础知识,以及如何使用Python中的Selenium WebDriver进行元素定位、操作和等待机制,旨在帮助初学者理解Web自动化测试中的关键概念和操作技巧。
44 1
|
2月前
|
测试技术
软件测试中的心理学:如何优化测试流程
【8月更文挑战第6天】本文深入探讨了软件测试过程中的心理学因素,揭示了测试人员的心理动态对测试效率和质量的影响。通过分析测试人员的压力源、动机以及团队间的沟通问题,提出了一系列改善策略,如建立积极的反馈机制、提供持续的职业培训和优化工作环境等,旨在提升软件测试的整体效能。文章最后提出一个开放性问题,邀请读者思考如何在不断变化的技术环境中维持测试团队的心理健康和动力。
|
2月前
|
Java 测试技术
hyengine microbench测试问题之提升jit优化如何解决
hyengine microbench测试问题之提升jit优化如何解决
|
2月前
|
SQL 缓存 关系型数据库
MySQL配置简单优化与读写测试
MySQL配置简单优化与读写测试