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一些封装好的常用算法的更多相关文章

  1. java开发过程中几种常用算法

    排序算法 排序算法中包括:简单排序.高级排序 简单排序 简单排序常用的有:冒泡排序.选择排序.插入排序 冒泡排序代码如下: private static void bubbleSrot(int[] a ...

  2. 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 ...

  3. Java调用外部程序常用算法和封装类

    一个项目不可能只使用一种编程语言来开发,也不可能由一个人开发,所以,Java程序员要学会和使用其他编程语言的程序员合作.那么,让我来发布一个工具类--Java外接程序扩展包,并将相应算法发布.Java ...

  4. 我们一起来排序——使用Java语言优雅地实现常用排序算法

    破阵子·春景 燕子来时新社,梨花落后清明. 池上碧苔三四点,叶底黄鹂一两声.日长飞絮轻. 巧笑同桌伙伴,上学径里逢迎. 疑怪昨宵春梦好,元是今朝Offer拿.笑从双脸生. 排序算法--最基础的算法,互 ...

  5. 【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 ...

  6. 常用算法之排序(Java)

    一.常用算法(Java实现) 1.选择排序(初级算法) 原理:有N个数据则外循环就遍历N次并进行N次交换.内循环实现将外循环当前的索引i元素与索引大于i的所有元素进行比较找到最小元素索引,然后外循环进 ...

  7. STL——配接器、常用算法使用

    学习STL,必然会用到它里面的适配器和一些常用的算法.它们都是STL中的重要组成部分. 适配器 在STL里可以用一些容器适配得到适配器.例如其中的stack和queue就是由双端队列deque容器适配 ...

  8. Java实现7种常见密码算法

    原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介 前面在密码学入门一文中讲解了各种常见的密码学概念.算法与运用场景,但没有介绍过代码,因此,为作补充,这一篇将会介绍 ...

  9. Atitit 编程语言常用算法attilax总结

    Atitit 编程语言常用算法attilax总结 1. 编译算法分类and   数据操作算法.1 1.1. Tab driver stat  状态转换表格算法1 1.2. Nest case 词法分析 ...

随机推荐

  1. WORD列表缩进的文本起始点

    Figure 1 Figure 2 Figure 3 编号位置以刻度尺为起点0.74厘米(2个字符间距),文本缩进以刻度尺为起点2.96厘米(8个字符间距) 以上两者相减得到的值正好=特殊格式悬挂缩进 ...

  2. Android 通过触摸动态地在屏幕上画矩形

    需求概述: 在屏幕上用手指画出一个区域,返回所圈的区域坐标. 技术实现: 自定义View,设置画笔及对应参数,在onTouchEvent()回调函数里,对触摸事件进行判断.画出矩形图形. 代码: 自定 ...

  3. 类库文件引用web服务报错解决方法-在 ServiceModel 客户端配置部分中,找不到引用协定的默认终结点元素

    由于需求,需要改造原有应用,因原有应用是写在console下面的,现在需要开放至web下, 想到BIZ层应用代码都是一样的,又不想在web下在添加引用,而重复写代码,故将原有的console下的服务和 ...

  4. [EffectiveC++]item22:Declare data members private

    将成员变量隐藏在函数接口的背后,可以为“所有可能的实现”提供弹性, 假设我们有一个public成员变量,而我们最终取消了它,多少代码可能会被破坏呢?那是一个不可知的大量. protected成员变量就 ...

  5. codeforces 808G Anthem of Berland

    codeforces 808G Anthem of Berland 题面 给定\(s\)串和\(t\)串,字符集是小写字母.\(s\)串中有些位置的值不确定,要求你确定这些位置上的值,使得\(t\)在 ...

  6. c++的路上,我坚信,我可以 -----第四次作业体会

    第四次作业 传送门 1.浅谈"新对象"sstream和stack 第四次作业,就是在第三次作业上作修改,上周周末,我刚刚才完成了第三次作业,但是知道了队列如何应用,面对这次的sta ...

  7. Debian 9 vsftpd: version 3.0.3 配置

    现在网上关于vsftpd的资料不少,但是版本已经比较老,配置起来各种错误,耽误不少时间,现将配置步骤更新如下,配置环境版本:Debian 9 + vsftpd: version 3.0.3 1.apt ...

  8. SQL脚本修改表结构

    SQL脚本修改表结构 新建表:create table [表名]([自动编号字段] int IDENTITY (1,1) PRIMARY KEY ,[字段1] nVarChar(50) default ...

  9. P1395 会议

    题目描述 有一个村庄居住着n个村民,有n-1条路径使得这n个村民的家联通,每条路径的长度都为1.现在村长希望在某个村民家中召开一场会议,村长希望所有村民到会议地点的距离之和最小,那么村长应该要把会议地 ...

  10. Windows安装openssl

    Windows下有两种方式安装openssl,第一种是采用安装包方式进行安装,第二种是采用编译源码方式进行安装.这里采用第一种方式,简单,直接. windows的openssl安装包的下载地址为:ht ...