java一些封装好的常用算法
1.简单排序Collections.sort():
//简单排序
List<String> staff= new LinkedList<>();
staff.add("aty");
staff.add("world");
staff.add("hello");
Collections.sort(staff);//升序
staff.sort(Comparator.reverseOrder());//降序
System.out.println(staff.toString());
2.混排Collections.shuffle():
//混排
List<Integer> numbers = new ArrayList<>();
for (int i = 0; i < 49; i++) {
numbers.add(i);
}
Collections.shuffle(numbers);
List<Integer> combining = numbers.subList(0, 6);
Collections.sort(combining);
System.out.println(combining);
3.二分Collections.binarySearch():
//二分
List<Integer> list = new ArrayList<>();
for (int i = 0; i < 10; i++) {
list.add(i);
}
System.out.println(list.toString());
System.out.println(Collections.binarySearch(list, 8));
4.一些简单的算法实现:
//简单算法实现
ArrayList<Integer> numbers = new ArrayList<>();
for (int i = 0; i < 49; i++) {
numbers.add(i);
}
System.out.println(Collections.min(numbers));//最小
System.out.println(Collections.max(numbers));//最大 ArrayList<Integer> numbers2 = new ArrayList<>();
numbers2 = (ArrayList<Integer>) numbers.clone();
System.out.println(numbers.toString()); //复制 Collections.fill(numbers, 1000);
System.out.println(numbers.toString());//所有值换成1000 Collections.addAll(numbers, 300,800,100);
System.out.println(numbers.toString());//添加所有值进去 Collections.replaceAll(numbers, 3, 900);//将所有3提传成900 ArrayList<Integer> sublist =new ArrayList<>();
for(int i=0;i<4;i++){
sublist.add(i);
}
System.out.println(Collections.indexOfSubList(numbers,sublist)); Collections.swap(numbers, 2, 3);
System.out.println(numbers.toString());//交换俩元素位置 Collections.reverse(numbers);
System.out.println(numbers);//倒置列表元素 Collections.rotate(numbers, 2);
System.out.println(numbers.toString());//旋转列表元素 // Collections.frequency(c, o);//返回c中与o相同的元素个数
// Collections.disjoint(c1, c2);//如果两个集合没有相同的元素,则返回true
5.栈:
//栈
Stack<Integer> stack = new Stack<>();
stack.push(5);//将5压入栈并返回5
stack.pop();//弹出并返回栈顶的元素,栈为空不能调用
stack.peek();//返回栈顶元素,但不弹出
java一些封装好的常用算法的更多相关文章
- java开发过程中几种常用算法
排序算法 排序算法中包括:简单排序.高级排序 简单排序 简单排序常用的有:冒泡排序.选择排序.插入排序 冒泡排序代码如下: private static void bubbleSrot(int[] a ...
- Atitit.跨语言 java c#.net php js常用的codec encode算法api 兼容性 应该内置到语言里面
Atitit.跨语言 java c#.net php js常用的codec encode算法api 兼容性 应该内置到语言里面 1. 常用算法1 1.1. 目录2 1.2. 定义和用法编辑2 1.3 ...
- Java调用外部程序常用算法和封装类
一个项目不可能只使用一种编程语言来开发,也不可能由一个人开发,所以,Java程序员要学会和使用其他编程语言的程序员合作.那么,让我来发布一个工具类--Java外接程序扩展包,并将相应算法发布.Java ...
- 我们一起来排序——使用Java语言优雅地实现常用排序算法
破阵子·春景 燕子来时新社,梨花落后清明. 池上碧苔三四点,叶底黄鹂一两声.日长飞絮轻. 巧笑同桌伙伴,上学径里逢迎. 疑怪昨宵春梦好,元是今朝Offer拿.笑从双脸生. 排序算法--最基础的算法,互 ...
- 【Java】-NO.13.Algorithm.1.Java Algorithm.1.001-【Java 常用算法手册 】-
1.0.0 Summary Tittle:[Java]-NO.13.Algorithm.1.Java Algorithm.1.001-[Java 常用算法手册 ]- Style:Java Series ...
- 常用算法之排序(Java)
一.常用算法(Java实现) 1.选择排序(初级算法) 原理:有N个数据则外循环就遍历N次并进行N次交换.内循环实现将外循环当前的索引i元素与索引大于i的所有元素进行比较找到最小元素索引,然后外循环进 ...
- STL——配接器、常用算法使用
学习STL,必然会用到它里面的适配器和一些常用的算法.它们都是STL中的重要组成部分. 适配器 在STL里可以用一些容器适配得到适配器.例如其中的stack和queue就是由双端队列deque容器适配 ...
- Java实现7种常见密码算法
原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介 前面在密码学入门一文中讲解了各种常见的密码学概念.算法与运用场景,但没有介绍过代码,因此,为作补充,这一篇将会介绍 ...
- Atitit 编程语言常用算法attilax总结
Atitit 编程语言常用算法attilax总结 1. 编译算法分类and 数据操作算法.1 1.1. Tab driver stat 状态转换表格算法1 1.2. Nest case 词法分析 ...
随机推荐
- 用setTimeout实现动态时钟的效果
1.获取到系统时间 2.获取到当地时间字符串 3.开启延时器,每一秒刷新一次时间 <!DOCTYPE html> <html> <head> <meta ch ...
- SQL连接的分类
连接的分类 内连接 等值连接(INNER JOIN) 自然连接(NATURAL JOIN) 交叉连接(CROSS JOIN) 不等连接 外连接 左外连接(LEFT OUTER) 右外连接(RIGHT ...
- 深入浅出SharePoint2012——安装Report Service
安装顺序 Microsoft .NET Framework 3.5 SP1 report service installation,pls SQLServer2008R2SP1-KB2528583-x ...
- 有关js弹出提示框几种方法
1直接提示只有确定功能的提示框 只显示提示信息 alert(“提示信息”); alert ();的参数只有一个就是提示信息,无返回值 2 弹出输入框让你输入内容 prompt() ; 有两个参数:第一 ...
- Autorelease 性能测试
__weak NSString *string_weak_ = nil; - (void)viewDidLoad { [super viewDidLoad]; // 场景 1 NSString *st ...
- Kali-linux使用Wifite破解无线网络
一些破解无线网络程序是使用Aircrack-ng工具集,并添加了一个图形界面或使用文本菜单的形式来破解无线网络.这使得用户使用它们更容易,而且不需要记住任何命令.本节将介绍使用命令行工具Wifite, ...
- Asp.Net Core + Ocelot 网关搭建:负载均衡的配置
前言 上一篇中简单做了一个网关Demo.本篇中也记录一下负载均衡的配置实现. 演示 首先开三个服务,端口分别为 60001,60003,60005,然后分别启动三个服务.接下来在ApiGate ...
- java学习笔记 --- 多线程(多线程的控制)
1.线程休眠 public static void sleep(long millis) public class ThreadSleep extends Thread { @Override ...
- JDK(七)JDK1.8源码分析【集合】TreeMap
本文转载自joemsu,原文链接 [JDK1.8]JDK1.8集合源码阅读——TreeMap(二) TreeMap是JDK中一种排序的数据结构.在这一篇里,我们将分析TreeMap的数据结构,深入理解 ...
- JavaScript获取0-100之间的随机数
function (min, max) { return Math.floor(Math.random() * (max - min)) + min } 如果想获取0-100之间的随机数,则可将函数的 ...