//统计开灯数

for(int i = 0; i < light.length; i++){

if(light[i] == 1){

result ++;

}

}

System.out.println(“result===” + result);

*/

/*

  • 过对灯编号进行约数计数来降低复杂度,约数个数为奇数的灯最后是开着的,约数为偶数的灯是关着的

*/

for(int i = 1; i <= 100; i ++){

for(int j = 1; j < i; j++){

if(i % j == 0){

num[i-1]++;

}

}

}

for(int i = 0; i < 100; i ++){

if(num[i] %2 == 0){

result++;

}

}

System.out.println(“result===” + result);

}

}

问题延伸:如果是n盏灯,k个人呢

这里给出复杂度为O(k*n)的约数个数算法,这里的约数个数是指ni在1-k之间的约数个数,方法一复杂度也为O(k*n)。还没想到怎么优化,读者如果有想法,希望给点指点。

代码:

package com.ldw.test;

public class demo5 {

public static void main(String[] args){

Light light=new Light(10,5);

light.calculate();

System.out.println(“===========”);

Light light2=new Light(100,100);

light2.calculate();

}

}

class Light{

private int lightNum;

private int stuNum;

private int result = 0;

public Light(int lightNum, int stuNum){

this.lightNum = lightNum;

this.stuNum = stuNum;

}

public int getResult(){

return this.result;

}

public void calculate(){

//保存约数个数

int num[] = new int[this.lightNum];

//将数组初始化为0

for(int i = 0; i < num.length; i++){

num[i] = 0;

}

//计算每一个灯的约数个数

for(int i = 1; i <= this.lightNum; i++){

for(int j = 1; j <= this.stuNum; j ++){

if(i % j == 0){

num[i - 1]++;

}

}

}

for(int i = 0; i < num.length; i++){

if(num[i] % 2 == 1){

System.out.print(i+1+" ");

this.result++;

}

}

System.out.println(“”);

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
img

总结

首先是感觉自己的基础还是不够吧,大厂好像都喜欢问这些底层原理。

另外一部分原因在于资料也还没有看完,一面时凭借那份资料考前突击恶补个几天居然也能轻松应对(在这里还是要感谢那份资料,真的牛),于是自我感觉良好,资料就没有怎么深究下去了。

之前的准备只涉及了Java、Android、计网、数据结构与算法这些方面,面对面试官对其他基础课程的考察显得捉襟见肘。

下一步还是要查漏补缺,进行针对性复习。

最后的最后,那套资料这次一定要全部看完,是真的太全面了,各个知识点都涵盖了,几乎我面试遇到的所有问题的知识点这里面都有!在这里也免费分享给大家,希望大家不要犯和我一样的错误呀!!!一定要看完!


获取方式:点击我的GitHub

希望大家不要犯和我一样的错误呀!!!一定要看完!**
[外链图片转存中…(img-fahA2V3D-1711124575412)]

[外链图片转存中…(img-oGjUJuON-1711124575412)]

[外链图片转存中…(img-Kp7SdM2C-1711124575413)]
获取方式:点击我的GitHub

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐