面试准备+复习分享:
为了应付面试也刷了很多的面试题与资料,现在就分享给有需要的读者朋友,资料我只截取出来一部分哦
输入两个正整数 m 和 n,求其最大公约数和最小公倍数。
分析
在循环中,只要除数不等于 0,用较大数除以较小的数,将较小的一个数作为下一轮循环的大数,取得的余数作为下一轮循环的较小的数,如此循环知道较小的数的值为 0,返回较大的数,此数极为最大公约数,最小公倍数为两数之积除以最大公约数。
实现
import java.util.Scanner;
/**
-
Created with IntelliJ IDEA.
-
@author : cunyu
-
@version : 1.0
-
@email : 747731461@qq.com
-
@公众号 : 村雨遥
-
@website : https://cunyu1943.github.io
-
@date : 2021/6/1 22:23
-
@project : Java 编程实例
-
@package : PACKAGE_NAME
-
@className : Example6
-
@description :
*/
public class Example6 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println(“输入 m, n”);
int m = scanner.nextInt();
int n = scanner.nextInt();
int divisor = maxCommonDivisor(m, n);
int multiple = m * n / maxCommonDivisor(m, n);
System.out.println("最大公约数: " + divisor);
System.out.println("最小公倍数: " + multiple);
}
public static int maxCommonDivisor(int a, int b) {
int max, min;
max = (a > b) ? a : b;
min = (a < b) ? a : b;
if (max % min != 0) {
return maxCommonDivisor(min, max % min);
} else {
return min;
}
}
}
结果
题目
输入一行字符,分别统计其中的英文字母、空格、数字和其他字符的个数;
分析
遍历字符串,然后看每个字符属于的类别,分别计数;
实现
import java.util.Scanner;
/**
-
Created with IntelliJ IDEA.
-
@author : cunyu
-
@version : 1.0
-
@email : 747731461@qq.com
-
@公众号 : 村雨遥
-
@website : https://cunyu1943.github.io
-
@date : 2021/6/1 23:04
-
@project : Java 编程实例
-
@package : PACKAGE_NAME
-
@className : Example7
-
@description :
*/
public class Example7 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println(“输入字符串”);
String str = scanner.nextLine();
int character = 0;
int digit = 0;
int blank = 0;
int others = 0;
// 遍历字符串,然后统计其中的字符
for (int i = 0; i < str.length(); i++) {
char ch = str.charAt(i);
if (ch == ’ ') {
blank++;
} else if (ch >= ‘0’ && ch <= ‘9’) {
digit++;
} else if (ch >= ‘a’ && ch <= ‘z’ || ch >= ‘A’ && ch <= ‘Z’) {
character++;
} else {
others++;
}
}
System.out.println(“空格数:” + blank);
System.out.println(“英文字母数:” + character);
System.out.println(“数字数:” + digit);
System.out.println(“其他字符数:” + others);
}
}
结果
题目
求 s = a + a a + a a a + … + a a … a s = a + aa + aaa + … + aa…a s=a+aa+aaa+…+aa…a 的值,其中 a a a 是一个数字,如 2 + 22 + 222 + … + 22…2
分析
首先是分别输入 a a a 和次数 count
的值,然后循环得到最大的数,每次进行累加求和,然后向前移动一位。
实现
import java.util.Scanner;
/**
-
Created with IntelliJ IDEA.
-
@author : cunyu
-
@version : 1.0
-
@email : 747731461@qq.com
-
@公众号 : 村雨遥
-
@website : https://cunyu1943.github.io
-
@date : 2021/6/2 16:25
-
@project : Java 编程实例
-
@package : PACKAGE_NAME
-
@className : Example8
-
@description :
*/
public class Example8 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println(“输入次数”);
int count = scanner.nextInt();
System.out.println(“输入 a”);
int a = scanner.nextInt();
int sum = 0;
int i = 0;
// 缓存尾数
int tmp = 0;
while (i < count) {
tmp += a;
sum += tmp;
a *= 10;
i++;
}
System.out.println(“最终和:” + sum);
}
}
结果
最后
既已说到spring cloud alibaba,那对于整个微服务架构,如果想要进一步地向上提升自己,到底应该掌握哪些核心技能呢?
就个人而言,对于整个微服务架构,像RPC、Dubbo、Spring Boot、Spring Cloud Alibaba、Docker、kubernetes、Spring Cloud Netflix、Service Mesh等这些都是最最核心的知识,架构师必经之路!下图,是自绘的微服务架构路线体系大纲,如果有还不知道自己该掌握些啥技术的朋友,可根据小编手绘的大纲进行一个参考。
如果觉得图片不够清晰,也可来找小编分享原件的xmind文档!
且除此份微服务体系大纲外,我也有整理与其每个专题核心知识点对应的最强学习笔记:
-
出神入化——SpringCloudAlibaba.pdf
-
SpringCloud微服务架构笔记(一).pdf
-
SpringCloud微服务架构笔记(二).pdf
-
SpringCloud微服务架构笔记(三).pdf
-
SpringCloud微服务架构笔记(四).pdf
-
Dubbo框架RPC实现原理.pdf
-
Dubbo最新全面深度解读.pdf
-
Spring Boot学习教程.pdf
-
SpringBoo核心宝典.pdf
-
第一本Docker书-完整版.pdf
-
使用SpringCloud和Docker实战微服务.pdf
-
K8S(kubernetes)学习指南.pdf
另外,如果不知道从何下手开始学习呢,小编这边也有对每个微服务的核心知识点手绘了其对应的知识架构体系大纲,不过全是导出的xmind文件,全部的源文件也都在此!
er实战微服务.pdf
- K8S(kubernetes)学习指南.pdf
[外链图片转存中…(img-y3IcX0RB-1715270916173)]
另外,如果不知道从何下手开始学习呢,小编这边也有对每个微服务的核心知识点手绘了其对应的知识架构体系大纲,不过全是导出的xmind文件,全部的源文件也都在此!
[外链图片转存中…(img-id53AEEB-1715270916173)]