![](https://img-blog.csdnimg.cn/20210615151436866.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法
文章平均质量分 76
数据结构和算法
阳宗德
诚然,程序员应该重视代码,但眼里也不应该只有代码,很多代码之外的东西也很精彩。工作也是为了更好的生活,多看看身边的事,多关心身边的人,终究我们还是要回归到平凡的生活中。
我们所热爱的,就是自己的生活!
展开
-
Fork-Join分治编程框架
文章目录概念普通线程池实现分治使用普通的线程池实现普通的线程池实现例子Fork-Join 框架使用工作窃取算法Fork-Join 框架的使用介绍例子概念Fork/Join框架是Java7提供了的一个用于并行执行任务的框架,是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架,这种开发方法也叫 分治编程。分治编程可以极大地利用CPU资源,提高任务执行的效率,也是目前与多线程有关的前沿技术。普通线程池实现分治注意:存在线程阻塞等问题使用普通的线程池实现我们往一个线程池提交翻译 2021-05-20 09:41:41 · 144 阅读 · 0 评论 -
树形结构工具类
import com.zbwd.outline.entity.SysDepartment;import org.springframework.util.CollectionUtils;import org.springframework.util.ObjectUtils;import java.util.ArrayList;import java.util.List;import java.util.stream.Collectors;/** @Description: 树形工具类 .原创 2021-04-27 10:12:26 · 157 阅读 · 0 评论 -
单例模式
单例设计模式:意图:保证一个类仅有一个实例,并提供一个访问它的全局访问点。主要解决:一个全局使用的类频繁地创建与销毁。何时使用:当您想控制实例数目,节省系统资源的时候。如何解决:判断系统是否已经有这个单例,如果有则返回,如果没有则创建。关键代码:构造函数是私有的。单例模式的从实现步骤上来讲,分为三步:构造方法私有,保证无法从外部通过 new 的方式创建对象。 对...原创 2019-05-26 17:23:28 · 344 阅读 · 0 评论 -
java递归遍历全文件及删除全文件
package 练习;import java.io.File;public class 遍历全文件 {//find之所以会抛出空指针异常是因为java是利用jvm运行的。jvm没有权限。而c语言可以,是因为直接跑的底层,没有虚拟机。 public static void main(String[] args)throws NullPointerException { File fi...原创 2019-05-18 22:41:11 · 356 阅读 · 0 评论 -
Java实现遍历文件
初级:1.以遍历.js文件为例: public static void main(String[] args) { File f = new File("C:/"); String fileList[] = f.list(); // 调用不带参数的list()方法 for (int i = 0; i < fileList.length; i++) { if (fileL...原创 2019-05-14 20:50:53 · 2487 阅读 · 0 评论 -
由1,2,3,4,组成的不重复的三位数有多少个
由1,2,3,4,组成的不重复的三位数有多少个,直接上代码: public static void main(String[] args) { int count=0; for (int i = 1; i <=4; i++) { for (int j =1; j <=4; j++) { for (int k = 1; k <=4; k++) { ...原创 2019-05-10 20:14:29 · 1487 阅读 · 0 评论 -
数字转汉字工具类
public class NumberToChineseUtils { private static final char[] RMB_NUMS = "零一二三四五六七八九".toCharArray(); private static final String[] U1 = {"", "十", "百", "千"}; private static final String[...原创 2020-03-16 22:41:17 · 193 阅读 · 0 评论 -
连续顺序替换 连续重复字母替换
package com.yinhai.onehour; // 包路径不可修改!!!import java.util.*; //只能使用最高1.8版本JDK提供的API/** * 题目:给定一个字符串(只包含小写英文字母),按顺序执行以下两条规则,输出计算后的字符串。 * <p> * 规则 1:对于连续顺序4位及以上的字母,中间使用“~”替换。 * 例如:ahhhhhh...原创 2020-01-11 03:05:36 · 1360 阅读 · 0 评论 -
Java实现2+22+222+2222+22222
import java.util.Scanner;public class 求 {/* * 规律: * 2=0*10+2 * 22=2*10+2 * 222=22*10+2 * 。。。 * 我们发现后一项始终等于前一项乘10+2 * 所以我们定义一个指针index来计算个数,要sum来暂存结果,让a自动变化 * 定义qiu()返回结果 */ public static vo...原创 2019-05-18 11:13:39 · 4754 阅读 · 0 评论 -
图的深度优先遍历和广度优先遍历(Java)
1.定义:图的遍历,指的是从图中的任一顶点出发,对图中的所有顶点访问一次且只访问一次。图的遍历操作和树的遍历操作功能相似。图的遍历是图的一种基本操作,图的许多其它操作都是建立在遍历操作的基础之上。由于图结构本身的复杂性,所以图的遍历操作也较复杂,主要表现在以下四个方面:① 在图结构中,没有一个“自然”的首结点,图中任意一个顶点都可作为第一个被访问的结点。② 在非连通图中,从一个顶点出发,只...原创 2019-05-22 22:18:46 · 2439 阅读 · 0 评论 -
Java丑数
丑数:把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但7、14不是,因为它们包含质因子7。 习惯上我们把1当做是第一个丑数。前20个丑数为:1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 20, 24, 25, 27, 30, 32, 36。判断方法:首先除2,直到不能整除为止,然后除5到不能整除为止,然后除3直...原创 2019-05-22 20:27:21 · 306 阅读 · 0 评论 -
Java排序算法
package exception; import java.util.Arrays; public class Sort { public static void main(String[] args) { int[] array = {1,5,2,9,7,8,6,4,0};// System.out.println(Arrays.toString(b...原创 2019-05-17 16:45:12 · 141 阅读 · 0 评论 -
递归走楼梯or斐波那契数列
public class 走楼梯 {// 共有十阶楼梯,小张每次只能走一阶或两阶,共有多少种方法走完此楼梯 public static void main(String[] args) { System.out.println(fun(10)); } private static int fun(int i) { if (i==1) { return 1; } if...原创 2019-05-16 12:31:30 · 314 阅读 · 0 评论 -
Java辗转相除求最大公约数
public class 辗转相除求最大公约数 { static int gcd(int m,int n) { if(m<n) { int t=m; m=n; n=t; } int r; r=m%n; if(r==0) {return n;} else { ...原创 2019-05-16 12:26:47 · 786 阅读 · 0 评论 -
求101到200之间的素数
代码: public static void main(String[] args) { for(int i=101;i<200;i++) { int flag=0; for(int j =2;j<i;j++){ if(i%j==...原创 2019-05-11 15:43:44 · 8843 阅读 · 0 评论 -
Java杨辉三角最简单的实现方式
这里编写了杨辉三角的l两种实现方式,个人喜欢第一种,数组计算,第二种为纯计算的方式。**第一种:** public static void main(String[] args) { Scanner sc=new Scanner(System.in); int row =sc.nextInt(); int arr[][]=new int [row][row]; for (in...原创 2019-05-10 20:12:28 · 10157 阅读 · 2 评论 -
求1到1000的完数
直接上代码: public static void main(String[] args) { int sum; for(int i=1; i<=1000; i++) { sum=0; for(int j=1; j<=i/2; j++) { if(i%j == 0) { sum += j; } } if(sum == i) {...原创 2019-05-10 20:18:48 · 2825 阅读 · 4 评论