当前位置: 首页 > news >正文

蓝桥杯-排序

数组排序

Arrays.sort(int[] a)

这种形式是对一个数组的所有元素进行排序,并且时按从小到大的顺序。

package Work;import java.util.*;public class Imcomplete {public static void main(String args[]) {int arr[]=new int [] {1,324,4,5,7,2};Arrays.sort(arr);for(int x:arr) {System.out.print(x+" ");}}
}

Arrays.sort(T[] arr,Comparator<T>c)用Comparator接口实现自定义顺序规则

实现Comparator接口实现降序

package AAA;import java.util.*;public class Main {public static void main(String[] args) {// TODO Auto-generated method stubInteger[] arr= {1,324,2,5,4,45,8};Arrays.sort( arr, new Comparator<Integer>(){//重写comparator方法@Overridepublic int compare(Integer o1, Integer o2) {// TODO Auto-generated method stubreturn o2-o1;	//返回>0交换。}	});System.out.println("您所输入的数组经过降序处理后为:");for(int x:arr) {System.out.print(x+" ");}}}

如果return o1-o2;则实现升序


Arrays.sort(arr,(o11,o2)->o1-o2)

java引入Lambda简写comparator:Arrays.sort(arr,(o11,o2)->o1-o2)

实现升序 

package AAA;import java.util.*;public class Main {public static void main(String[] args) {// TODO Auto-generated method stubInteger[] arr= {1,324,2,5,4,45,8};Arrays.sort(arr,(o1,o2)->o1-o2);System.out.println("您所输入的数组经过升序处理后为:");for(int x:arr) {System.out.print(x+" ");}}}


 集合排序

Collections.sort(int []arr)

这种形式是对一个集合的所有元素进行排序,并且按从小到大的顺序。

package AAA;import java.util.*;public class Pasage {public static void main(String args[]) {List<Integer> list=new ArrayList();list.add(3);list.add(1);list.add(8);list.add(2);Collections.sort(list);System.out.println("经过升序排列所得结果为:");for(int x:list) {System.out.print(x+" ");}}}

 

 使用Lambda实现降序
package AAA;import java.util.*;public class Pasage {public static void main(String args[]) {List<Integer> list=new ArrayList();list.add(3);list.add(1);list.add(8);list.add(2);Collections.sort(list,(o1,o2)->o2-o1);System.out.println("经过降序排列所得结果为:");for(int x:list) {System.out.print(x+" ");}}}

Lambda其实是对comparator进行重写。

package AAA;import java.util.*;public class Pasage {public static void main(String args[]) {List<Integer> list=new ArrayList();list.add(3);list.add(1);list.add(8);list.add(2);Collections.sort(list,new Comparator<Integer>() {@Overridepublic int compare(Integer o1, Integer o2) {// TODO Auto-generated method stubreturn o2-o1;}});System.out.println("经过降序排列所得结果为:");for(int x:list) {System.out.print(x+" ");}}}

http://www.lryc.cn/news/312931.html

相关文章:

  • 计算机设计大赛 深度学习的视频多目标跟踪实现
  • 高性能JSON框架之FastJson的简单使用
  • ★判断素数的几种方法(由易到难,由慢到快)
  • vue svelte solid 虚拟滚动性能对比
  • IDEA中新增文件,弹出框提示是否添加到Git点错了,怎么重新设置?
  • LV15 day5 字符设备驱动读写操作实现
  • Uninty 鼠标点击(摄像机发出射线-检测位置)
  • 描述下Vue自定义指令
  • 2024.3.7
  • this.$watch 侦听器 和 停止侦听器
  • P1030 [NOIP2001 普及组] 求先序排列题解
  • 【分布式】NCCL Split Tree kernel内实现情况 - 06
  • C语言深入学习 --- 4.自定义类型(结构体+枚举+联合)
  • AI自然语言中默认上下文长度4K 几K是什么意思?
  • vSphere 8考试认证题库 2024最新(VCP 8.0版本)
  • 系统学习Python——装饰器:“私有“和“公有“属性案例-[装饰器参数、状态保持和外层作用域]
  • 星辰天合参与编制 国内首个可兼顾 AI 大模型训练的高性能计算存储标准正式发布
  • 算法训练day38动态规划基础Leetcode509斐波纳切数70爬楼梯746使用最小花费爬楼梯
  • Leetcode 206. 反转链表
  • 电子科技大学课程《计算机网络系统》(持续更新)
  • HBase介绍、特点、应用场景、生态圈
  • 蓝桥杯错误记录
  • Spring-静态代理VS动态代理/实现代理ProxyFactory
  • 单片机精进之路-9ds18b20温度传感器
  • 支部管理系统微信小程序(管理端+用户端)flask+vue+mysql+微信小程序
  • 4、Linux-常用命令(二)
  • golang实现openssl自签名双向认证
  • 【学习】torchvision.datasets.ImageFolder()
  • pyinstaller打包的exe运行报错 No module named path
  • Vue3中Vuex状态管理库学习笔记