冒泡排序优化后

package com.atguigu.sort;import java.util.Arrays;/*** @创建人 wdl* @创建时间 2021/3/21* @描述*/
public class BubbleSort {public static void main(String[] args) {int arr[]={3,9,-1,10,20};//为了容易理解,我们吧冒泡排序的演变过程给大家展示//第一趟排序,就是将最大的数排在最后//冒泡排序 的时间复杂度O(n^2)int temp=0;//临时变量boolean flag=false;//标识变量,标识是否进行交换for (int i = 0; i < arr.length - 1; i++) {for (int j = 0; j < arr.length - 1-i; j++) {//如果前面的数比后面的数大,则交换if(arr[j]>arr[j+1]){flag=true;temp=arr[j+1];arr[j+1]=arr[j];arr[j]=temp;}}System.out.println("第"+(i+1)+"趟排序后的数组");System.out.println(Arrays.toString(arr));if(flag==false){//在一趟排序中,一次交换都没有发生过break;}else {flag=false;//重置flag!!!,进行下次判断}}//        //第二趟排序,就是将第二大的数排在倒数第二位
//        for (int j = 0; j < arr.length - 1-1; j++) {
//            //如果前面的数比后面的数大,则交换
//            if(arr[j]>arr[j+1]){
//                temp=arr[j+1];
//                arr[j+1]=arr[j];
//                arr[j]=temp;
//            }
//        }
//        System.out.println("第二趟排序后的数组");
//        System.out.println(Arrays.toString(arr));
//
//        //第三趟排序,就是将第三大的数排在倒数第三位
//        for (int j = 0; j < arr.length - 1-2; j++) {
//            //如果前面的数比后面的数大,则交换
//            if(arr[j]>arr[j+1]){
//                temp=arr[j+1];
//                arr[j+1]=arr[j];
//                arr[j]=temp;
//            }
//        }
//        System.out.println("第三趟排序后的数组");
//        System.out.println(Arrays.toString(arr));
//
//        //第四趟排序,就是将第四大的数排在倒数第四位
//        for (int j = 0; j < arr.length - 1-3; j++) {
//            //如果前面的数比后面的数大,则交换
//            if(arr[j]>arr[j+1]){
//                temp=arr[j+1];
//                arr[j+1]=arr[j];
//                arr[j]=temp;
//            }
//        }
//        System.out.println("第四趟排序后的数组");
//        System.out.println(Arrays.toString(arr));}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/326908.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jQuery 基础教程 (四)之jQuery中的DOM操作

一、jQuery 中的 DOM 操作 &#xff08;1&#xff09;DOM(Document Object Model—文档对象模型)&#xff1a;一 种与浏览器, 平台, 语言无关的接口, 使用该接口可以 轻松地访问页面中所有的标准组件 &#xff08;2&#xff09;DOM 操作的分类: (A)DOM Core: DOM Core 并不专…

人脸检测的model类facemodel

这个类主要就是人脸检测用到的实体模型 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace face {public class facemodel{//年龄public string age { get; set; }//美丑public string beauty …

.Net大户的选择:Windows Container在携程的应用

数人云上海&深圳两地“ 容器之Mesos/K8S/Swarm三国演义”的嘉宾精彩实录第四弹&#xff01;小数已经被接连不断的干货搞晕了&#xff0c;沉浸技术的海洋好幸福~Windows container在国内的实践还比较少&#xff0c;携程作为.Net大户&#xff0c;率先进行了调研和实践应用&am…

BigDecimal保留两位小数,不足两位补0

// 四舍五入 BigDecimal value new BigDecimal(object.toString()).setScale(2,BigDecimal.ROUND_HALF_UP); // 不足两位小数补0 DecimalFormat decimalFormat new DecimalFormat("0.00#"); String strVal decimalFormat.format(value);

人脸检测源码facedetection

人脸检测源码&#xff1a; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Drawing.Imaging; using System.Linq; using System.Text; using System.Threading.Tasks; using System.W…

73. 矩阵置零---LeetCode---JAVA

代码实现 class Solution {public void setZeroes(int[][] matrix) {boolean[] xnew boolean[matrix.length];boolean[] ynew boolean[matrix[0].length];for(int i0;i<matrix.length;i){for(int j0;j<matrix[0].length;j){if(matrix[i][j]0){x[i]true;y[j]true; …

真正理解线程上下文类加载器(多案例分析)

转载自 真正理解线程上下文类加载器&#xff08;多案例分析&#xff09; 前置知识&#xff1a; java类加载器不完整分析 前言 此前我对线程上下文类加载器&#xff08;ThreadContextClassLoader&#xff0c;下文使用TCCL表示&#xff09;的理解仅仅局限于下面这段话&#x…

Docker4Dev #6 使用 Windows Container 运行.net应用

关于d4d系列&#xff1a;之前这个系列叫做docker4dotnet&#xff0c;因为当时主要是为了能够探索在docker上运行.net应用&#xff1b;现在我觉得应该叫做docker4developer&#xff0c;因为我希望能够帮助更多的开发人员使用docker技术。今天这篇就算是新的Docker4Dev系列的开始…

jquery对象和DOM对象的相互转换详解

jquery对象和DOM对象的相互转换 在讨论jquery对象和DOM对象的相互转换之前&#xff0c;先约定好定义变量的风格如果获取的是jquery对象&#xff0c;那么在变量前面加上$,例如 var $varible jquery对象&#xff1b; 如果获取的是DOM对象&#xff0c;则定义如下&#xff1a; …

人脸注册源码faceregiste

人脸注册&#xff1a; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using AForge; using …

LC67---删除有序链表中重复的元素---牛客---JAVA

import java.util.*;/** public class ListNode {* int val;* ListNode next null;* }*/public class Solution {/*** * param head ListNode类 * return ListNode类*/public ListNode deleteDuplicates (ListNode head) {if(headnull)return head;ListNode temp head;wh…

破坏双亲委派机制的那些事

转载自 破坏双亲委派机制的那些事 前言 今天重读《深入理解Java虚拟》这本书&#xff0c;读到破坏双亲委派机制这一小节&#xff0c;其中有一段话&#xff0c;如下 双亲委派模型的第二次“被破坏”是由这个模型自身的缺陷所导致的&#xff0c;双亲委派很好地解决了各个类加…

Windows 容器

什么是容器 它们是隔离、资源控制且可移植的操作环境。 基本上&#xff0c;容器是一个隔离的位置&#xff0c;应用程序可在其中运行&#xff0c;而不会影响系统的其他部分&#xff0c;并且系统也不会影响该应用程序。 容器是虚拟化的下一个演化。 如果你在容器内&#xff0c;看…

人脸认证源码faceIdentify

人脸认证&#xff1a; using AForge.Video.DirectShow; using face; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.SqlClient; using System.Dr…

选择排序+推导过程

图解 代码实现 package com.atguigu.sort;import java.util.Arrays; import java.util.List;/*** 创建人 wdl* 创建时间 2021/3/21* 描述*/ public class SelectSort {public static void main(String[] args) {int []arr{101,34,119,1};System.out.println("排序前"…

Echart折线图 柱状图

echat_百度搜索 Examples - Apache ECharts Examples - Apache ECharts Examples - Apache ECharts 修改左侧的数据 点击右侧下载可以得到html页面 Examples - Apache ECharts Examples - Apache ECharts

Streaming的算法Reservoir Sampling

转载自 这是一个惊艳了我的算法题 Reservoir Sampling( Reservoir sampling ) 这是我在今年求职过程中面试的时候被问到的&#xff0c;因为之前很少接触Streaming的算法&#xff0c;在听到这个题目的时候被惊呆了&#xff0c;根本不能理解&#xff1a; 给一个Streaming…

软件定义数据中心—Windows Server SDDC技术与实践

《软件定义数据中心—Windows Server SDDC技术与实践》是国内第一本讲解微软Windows Server 软件定义数据中心的中文图书&#xff0c;书中系统、全面地介绍了微软Windows Server 软件定义数据中心各个模块&#xff08;SDS/SDN/SDC/容器&#xff09;的概念、技术和架构&#xff…

人脸登陆facelogin

人脸登陆&#xff1a; using AForge.Video.DirectShow; using face; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.SqlClient; using System.Dr…

插入排序+思路分析

图解 代码实现 package com.atguigu.sort;import java.util.Arrays;/*** 创建人 wdl* 创建时间 2021/3/22* 描述*/ public class InsertSort {public static void main(String[] args) {int[] arr{101,34,119,1};insertSort(arr);}//插入排序public static void insertSort(in…