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 词法分析 ...
随机推荐
- POJ | Boolean Expressions
总时间限制: 1000ms 内存限制: 65536kB 描述The objective of the program you are going to produce is to evaluate ...
- Win10离线安装.NET Framework 3.5的方法技巧(附离线安装包下载)
原文链接: https://www.windows10.pro/win10-net-framework-3-5/ 在Windows10中,当我们安装某些软件的时候会提示“你的电脑上的应用需要使用以下W ...
- [EffectiveC++]item06:若不想使用编译器自动生成的函数,就该明确决绝
- python操作mysql二
游标 游标是一种能从包括多条数据记录的结果集中每次提取一条记录的机制,游标充当指针的作用,尽管游标能遍历结果中的所有行,但它一次只指向一行,游标的作用就是用于对查询数据库所返回的记录进行遍历,以便进行 ...
- Java中String直接复制和new String创建对象的区别以及equals和==的区别和效率对比
编程语言中的问题很多时候我们看似懂,实际不懂,因为很多时候看不到更多的情况,从而缺少对这些看不到的情况的认知和解释. 今天mark一下String和new String()的区别.其实很简单. Str ...
- 排序算法Java版,以及各自的复杂度,以及由堆排序产生的top K问题
常用的排序算法包括: 冒泡排序:每次在无序队列里将相邻两个数依次进行比较,将小数调换到前面, 逐次比较,直至将最大的数移到最后.最将剩下的N-1个数继续比较,将次大数移至倒数第二.依此规律,直至比较结 ...
- 【[SCOI2009]迷路】
大水题一遍 过掉比较繁琐的拆点还是非常开心的 发现每一条边的边权可能不是\(1\),但是边权的范围非常小,同时点数也非常小,只有\(n<=10\),所以我们可以将一个点拆成九个点,之后随便一连边 ...
- Python--BeautifulSoup库安装
1.BeautifulSoup简介 BeautifulSoup库通过解析文档可以获取网页文档中所需的数据,方便用户从HTML或XHTML文档中提取数据,作为python的一个辅助工作,也是爬虫实践中的 ...
- [LuoguP3668][USACO17OPEN]现代艺术2
[LuoguP3668][USACO17OPEN]Modern Art2(Link) 现在你有一块长为\(N\)的画布,每次可以选择一段连续的区间进行颜色填涂,新颜色会覆盖旧颜色.每一次填涂都要耗费一 ...
- iOS 关闭图片渲染
在为Button 设置背景图片的时候, 会发现显示的效果和UI给的图片不一样, 往往是把图片显示成为蓝色, 这是因为在新版的iOS中, 会自动对图片渲染. 我们只要把图片渲染关掉就OK了 - (UII ...