前言
2023年6月30日,空调和风扇都开着 有点冷 还没带被子,兄弟们半夜搁那开交响乐呢 鼾声此起彼伏 昨天太累了 所以也没怎么受影响 今天也没正式上课 在寝室的学习效率有点低 轻松人太多了 只能抽空在兄弟们吃饭的时候学习一下
6月30日 28~35℃ 天气 晴
1.每日一道算法题
public int findMaxLength(int[] nums) {
//1.将数组中的0换成-1 (便于计算)
long[] longs = Arrays.stream(nums).mapToLong(item -> {
if (item == 0) return -1;
else return item;
}).toArray();
//2.求前缀和 [1, -1, -1, 1, 1, 1, -1, -1] sum[length-1] sum[length-2] sum[length-1]-sum[0]
long[] sums =new long[longs.length+1]; // sum[length-3]
int sum=0; int max=0;
for (int i = 1; i <sums.length; i++) {
sum+=longs[i-1];
sums[i]=sum;
}
//3.遍历得出最大值
int length = sums.length;
for (int i = length-1; i >=1 ; i--) {
for (int j = 0; j+i< length; j++) {
if(sums[i+j]-sums[j]==0) return i;
}
}
return max;
}
2.每日一道面试题
今天学习到的面试题是
Q:Spring通过添加request mapping注解访问到对应Controller的原理是什么?
A:DispatcherServlet根据请求的URL路径和请求参数,找到匹配的Controller类和方法。
根据RequestMapping注解的配置,确定调用哪个方法来处理请求。
DispatcherServlet通过反射机制调用对应的Controller方法。
总结
提示:这里对文章进行总结:
以上就是今天要讲的内容,面试题都注重于原理和应用,而不那么在乎八股了 加油加油 看看源码便于理解