android春招面经

metaAPP 30分钟 KPI面
1.自我介绍
2.activity生命周期 哪个方法会获得用户焦点 
场景题 从服务端获取数据,怎么用flow传递数据,在界面获取焦点时,拉起键盘并将焦点对准name ETview
3.启动模式 主页面使用哪个模式
4.MVC与MVVM的区别
5.使用livedata传递数据时会有什么问题   数据倒灌?
6.场景题 设计im聊天软件时,应该怎么使用Service
7.栈和队列 项目中使用过吗  
8.口述算法 链表有环 爬楼梯
9.性能优化
10.自己有设计过自定义view吗

反问:有几个HC 答:就一个

后续 约二面

#牛客AI配图神器#大部分答的还行
全部评论
base哪里呀?
点赞 回复 分享
发布于 2025-04-18 13:03 上海

相关推荐

年前面的一共两轮面试,二面挂了,十分的可惜呀,虽然我作为一个纯JAVA选手,还是临时准备了一些安卓开发的一些内容,但是二面还是应付不过,整理一下面试题吧1. 做一个自我介绍2. HTTP、Socket 有什么差别3. WebSocket 是什么,和 HTTP、Socket 区别4. TCP 如何保障传输可靠5. TCP 拥塞控制有哪些方法6. HTTPS 原理,和 HTTP 区别7. 为什么用 NIO,相比 BIO 解决了什么问题8. 继承、封装、多态9. 重写和重载的区别10. Java 四种引用是什么,有什么区别、使用场景11. GC 可达性分析算法12. GC Roots 有哪些13. Java 异常种类,Exception 和 Error 区别14. 什么是泛型,泛型擦除是什么15. 泛型通配符类型有哪些16. ArrayList 底层结构和扩容模式17. ArrayList 和 LinkedList 区别18. HashMap 底层结构19. JDK 1.8 之后 HashMap 有什么变化20. HashMap 线程安全吗,为什么21. ConcurrentHashMap 1.7 和 1.8 区别22. 线程池工作原理23. 线程池队列满、最大线程也满,再添加任务会怎样24. 线程池拒绝策略有哪些25. JDK 预置线程池有哪些,有什么问题26. IO 密集型和计算密集型线程池怎么配置27. Java 中保证线程安全的机制还有哪些28. 协程了解吗,Go 和 Kotlin 协程对比29. 什么是 Spring IOC,作用是什么30. 安卓里自己实现 IOC 容器思路31. 什么是依赖注入 DI32. 自己设计依赖注入框架怎么做33. 什么是 AOP 思想,应用场景34. 什么是高级函数35. 延时任务实现方式有哪些36. Activity 生命周期37. Activity 弹弹窗生命周期有什么变化38. Android 四大组件及其作用39. 开发中常用哪些设计模式,怎么用40. MVC、MVP、MVVM 介绍41. 职业规划方向,和客户端开发会不会冲突42. 低代码/AI 辅助开发你是怎么做的43. 怎么提升 AI 生成代码效果44. 有没有做前后端规范约束生成效果45. 手写:链表反转(不使用额外内存)个人感想:面试官人很好,感觉挺和蔼的,题的话也是基础偏多一点,基本上都能回答出来,然后也是很快就约了二面了
吃不饱的迪恩很紧张:这么多
点赞 评论 收藏
分享
(码风很屎别在意~)1.很简单直接都是一个数字就行#include <bits/stdc++.h>using namespace std;#define endl '\n';void solve() {int n;cin >> n;vector<int> v(n + 1);for(int i = 1; i <= n; i++) {cin >> v[i];cout << (n + 1) - v[i] << " \n"[i == n];}}int main() {ios::sync_with_stdio(0);cin.tie(0),cout.tie(0);int t;cin >> t;while(t--) {solve();}}2.只用算平方就行了,直接暴力。如下#include <bits/stdc++.h>using namespace std;#define endl '\n';bool cal(int x) {int tot = 0;for(int i = 1; i * i <= x; i++) {if(x / i * i == x)tot += 2;}if(tot % 2)return false;else return true;}void solve() {int l, r;cin >> l >> r;int lmin = sqrt(l);int ans = 0;lmin = lmin * lmin == l ? lmin : lmin + 1;if(lmin == 1)ans++, lmin++;for(int i = lmin; i * i <= r; i++) {if(cal(i * i))ans++;}cout << ans;}int main() {ios::sync_with_stdio(0);cin.tie(0),cout.tie(0);int t;t = 1;while(t--) {solve();}}3.稍微推一下公式就行,题解如下#include <bits/stdc++.h>using namespace std;#define endl '\n';#define int long longint mod = 1e9 + 7;const int N = 1e6 + 10;int a[N];void solve() {int k, q;cin >> k >> q;for(int i = 1; i <= k; i++) {a[i] = 1;}a[k + 1] = k ;int tot = k;for(int i = k + 2; i <= 1000000; i++) {tot = ((tot + a[i - 1])  - a[i - k - 1]);a[i] = tot % mod;}while(q--) {int x;cin >> x;cout << a[x] % mod << endl;}}signed main() {ios::sync_with_stdio(0);cin.tie(0),cout.tie(0);int t;t = 1;while(t--) {solve();}}
一起聊美团
点赞 评论 收藏
分享
评论
1
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务