(参考:尚硅谷_宋红康_Java语言基础)

文章目录

  • 数组的冒泡排序
  • 数组的快速排序

数组的冒泡排序

package de1;public class Test2 {public static void main(String[] args) {int[] arr=new int[] {-6,-3,0,1,3,5,9,56,58,99};for(int i=0;i<arr.length-1;i++) {for(int j=0;j<arr.length-i-1;j++) {if (arr[j] > arr[j+1]){int buf = arr[j];arr[j] = arr[j+1];arr[j+1] = buf;}}}for(int x:arr) {System.out.print(x+" ");}
}
}

数组的快速排序

package de1;public class Test2 {private static void swap(int[] data,int i,int j) {int temp = data[i];data[i] = data[j];data[j] = temp;}public static void subsort(int[] data,int start,int end) {if(start < end) {int base = data[start];int low = start;int high = end + 1;while(true) {while(low < end && data[++low] - base <=0);while(high > start && data[--high] - base >=0);if(low < high) {swap(data,low,high);}else {break;}swap(data,start,high);subsort(data,start,high-1);subsort(data,high+1,end);}}}public static void quicksort(int[] data) {subsort(data,0,data.length-1);}public static void main(String[] args) {int[] data = {-9,-16,30,85,45,14,12,2,-9,-85,6,9};System.out.println("排序前:\n"+java.util.Arrays.toString(data));quicksort(data);System.out.println("排序后:\n"+java.util.Arrays.toString(data));}
}

我的Java学习之路(第十九天)------ 排序算法(冒泡排序、快速排序)相关推荐

  1. 十大排序算法之快速排序(两种方法)

    十大排序算法之快速排序 本文采用Java书写选择排序,其他语言类似可以借鉴着写 思想:在待排序序列中选择一个分割元素,将待排序序列中所有比分割元素关键字小的元素移动到分割元素左侧位置:将待排序序列中所 ...

  2. Java学习之路(十):枚举类和注解

    一.枚举类的使用 当类的对象只有有限个,确定的(此类称为枚举类),如 星期:周一,- , 周日 性别:男(man),女(woman) 支付方式:Cash(现金),WeChatPay(微信支付),Ali ...

  3. 十大排序算法:快速排序算法

    一.快速排序算法思想或步骤 分解: 数组A[p-r]被划分为两个子数组A[p-q-1]和A[q+1-r],使得A[q]为大小居中的数,左侧A[p-q-1]中的每个元素都小于等于它,而右边A[q+1-r ...

  4. 【C#】十大排序算法(动图演示+代码实现)

    文章目录 1.冒泡排序 2.插入排序 3.选择排序 4.快速排序 5.希尔排序 6.堆排序 7.归并排序 8.计数排序 9.桶排序 10.基数排序 参考 1.冒泡排序 口诀: 外层循环 n-1;内层循 ...

  5. JAVA学习之路:不走弯路,就是捷径(一)

      0.引言 在ChinaITLAB导师制辅导中,笔者发现问得最多的问题莫过于"如何学习编程?JAVA该如何学习?".类似的问题回答多了,难免会感觉厌烦,就萌生了写下本文的想法.到 ...

  6. java学习之路之javaSE基础1

    <h2>java学习之路之javaSE基础1</h2> <div> ###01.01_计算机基础知识(计算机概述)(了解) * A:什么是计算机?计算机在生活中的应 ...

  7. Java学习之路02_选择方向_旺旺老师

    提示:请您先阅读第一部分:Java学习之路01_软件江湖_旺旺老师 第二部分:帮派之争 就好像玩游戏要先选择角色种族,进入江湖要先选择帮派,那搞软件开发也要选择方向.个人总结的软件开发的方向:嵌入式开 ...

  8. 【Java学习笔记之二十六】深入理解Java匿名内部类

    在[Java学习笔记之二十五]初步认知Java内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意 ...

  9. java学习之路目录(已完结)

    java学习之路目录(持续更新中-) 第一阶段 javaSE(完结) 序号 标题 内容 001 java初识 java语言特点.体系结构.运行机制 002 java SE基础语法 注释.关键字.变量. ...

  10. java学习之路2--简单工厂模式实现饮料自动贩卖机

    java学习之路2 用简单工厂模式实现饮料自动贩卖机 功能简介 具体实现 1.简单工厂模式 2.代码 总结 用简单工厂模式实现饮料自动贩卖机) 功能简介 接收用户输入的信息,选择购买的饮料. 可供选择 ...

最新文章

  1. python连接oracle批量写入_oracle大数据量python导入实践-1w/s
  2. vSphere vCenter 4.0 安装图解
  3. React 万能的函数表达式
  4. 《javascript高级程序设计》笔记:Function类型
  5. 使用brew,cask和jenv在MacOSX上设置多个Java JRE / JDK
  6. 在c 语言中 一个函数由函数头和,C语言程序设计基础教程_习题答案
  7. iOS系统预览文件但不分享的实用技巧 (iOS10, QLPreviewController)
  8. 抖音春晚红包百亿互动量级背后,火山引擎浮出水面
  9. java中aotomicInteger_面试官:你说一下对Java中的volatile的理解吧!
  10. 使用 profile 进行python代码性能分析
  11. Android Studio Library生成jar包问题总结
  12. 字节码指令之控制转移指令
  13. 高仿小米盒子UI桌面
  14. 数智融合加速驱动企业商业创新
  15. Women Feel Excited About The Beautiful Louis Vuitton Bags
  16. 给小朋友讲故事——科学课,地球,太阳和月亮
  17. 【Godot】加载文件数据
  18. mysql 锁定表_mysql表锁定技术
  19. 怎样将微信热门文章采集到自己的公众号中?
  20. cocos2dx layer理解

热门文章

  1. Spring,SpringBoot,Springcloud都是干嘛的?
  2. 复利计算器结对2.0
  3. php弱类型比较,php弱类型问题总结
  4. 司铭宇讲师:销售技巧培训之销售沟通说服力
  5. RTSP协议学习笔记
  6. echarts 获取点击的y轴数值_四川Y轴前后钢板防护罩哪里卖
  7. 简易的网页小游戏之接星星,HTML+JavaScript+css(一丢丢)
  8. CPU为什么选择导热硅脂而不是牙膏
  9. ubuntu18.04下安装向日葵控制端
  10. 向日葵客户端 for Android,向日葵远程控制for Android 3.1 发布