58同城实习面筋

2023-11-01 23:50
文章标签 实习 同城 58 面筋

本文主要是介绍58同城实习面筋,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

实习面试过程中总结的一些面经:

面经1

1.一块内存分为几块

一块内存在逻辑上分为用户空间和内核空间,用户空间通过虚拟技术为每个进程分配不同的逻辑空间,进程逻辑空间包括:代码段,数据段、未出化数据段bss,堆空间、栈空间,他们是通过段页式的管理方式映射到物理内存;内核空间则是通过线性平铺的方式映射物理内存。

2. STL sort原理(内省排序,插入、快排、堆排,快排比堆排快,局部性原理)

插入排序:直接插入排序,复杂度O(n)
快速排序:复杂度O(nlgn)
堆排序:复杂度O(nlgn)

其中直接插入排序是稳定的,其他的两个都是不稳定的,一般STL底层的排序是使用的快排,因为从统计上它的性能较其他的有优势,当排序的数量较小时,采用的是直接插入排序

3. deque和list的区别
4. 讲了下STL。
5. 手写atoi,写的有点小瑕疵。
6. 仿函数(函数对象)和 函数指针的区别,效率和扩展性。

面经2

上午面完一面,下午就开始二面。

1. 自我介绍
2. 了解linux下的C开发吗?如何查看一个进程有多少个线程。

在这里插入图片描述

3. pstree offsetof container_of了解吗?全跟linux有关,不会

offsetof是用来判断结构体中成员的偏移位置,container_of宏用来根据成员的地址来获取结构体的地址

4. 如何快速比较两个字符串是否相等,我说直接o(n)遍历,或者异或每个字符,复杂度都是o(n)。他说可以通过类型转换,比如将4个字符转成一个int,然后相当于比较int是否相同,o(n/4)。
5. 写一个宏函数
6. 大端小端,写代码验证系统是大端还是小端 union来实现
7. 翻转单链表,手写。
8. 如何查看一个子进程的父进程状态,getppid();
9. cpu cache存的是啥(数据?)
10. 动态共享库和静态共享库,跟他说了下静态链接和动态链接。
11. 进程A如果可以访问到动态共享库中的全局变量,进程B能否访问到动态共享库中的全局变量

不懂,说可以访问,进程B这是没法访问进程A中的全局变量,因为进程之间的地址空间是独立的,然后他说这样的话,通过动态共享库是不是也就可以实现进程通信了?我一想,IPC通信没有共享库这玩意,没法解释

动态链接库的那段内存中可以访问共享的数据,而不是全局变量,通过pragma data_seg() 来表明这一段数据为共享数据来标识

12. 进程在内存中的内存模型,代码正文段、数据段(初始化和未初始化)、堆、栈段。
13. 问直播项目,如何在linux下开发的,我说在windows下开发移植过去的。

面经3

下午两点现场面的58,总共两轮技术面+一轮HR面

一面:

1.自我介绍,说一个你最擅长的项目
2.做这个项目的目的,说一下你负责的部分,最大的难点是什么,你怎么解决的,你从项目中学到了什么
3.数模中用到了什么语言,你负责的部分,用了什么工具,好处是什么
4.最近有没有学习新技术,怎么学的,看过哪些书
我说最近在看redis和算法,JVM
5.看了JVM之后,对Java有什么新的看法
6.知道哪些排序算法,快速排序和归并排序的区别,适用于哪些场合?堆排序呢?
7.TCP建立连接为啥需要3次握手,关闭连接需要4次挥手?
8.以前有实习过嘛?
9.你还有什么想问的,,,楼下等二面吧

面经4

58同城一面面经

1、项目
2、3次握手
3、socket和port的区别
4、给你一个大表,如何分成子表
5、算法题,找到数组中最大的数和第二大的数
6、算法题,如何判断一个数是2的n次方
7、还有什么想问的

58同城二面

存储ssd是怎么样分层次的
世界杯小组出线的题目如何做
题目的内容大概是,4个小组,头两名出线,赢一场积3分,平一场积1分,输一场0分,
问题:低于多少分肯定淘汰,高于多少分肯定晋级

思维解决:

1、首先来看,因为头两名晋级,那么需要考虑的是,对于最低分,那么让头组尽可能的分高,那么第二名分肯定尽可能的低,这样是最低的限度,所以可以假设,有一个队伍全部胜利,那么积9分,那么其余的队伍肯定就输了一场,第二名的队伍就在剩余三个队伍中选最低分,那么就是全部打平,也就是平局两场,积2分,2分则还有可能晋级,所以低于2分肯定不能晋级。

2、然后来看,高于多少分肯定晋级?
和1的方法也是类似,如果要头两名尽可能高分晋级,那么相当于有个队全败,这样可以尽可能让头两名达到高分, 这样只剩下三个队伍,三个队伍里面选投两名,分尽可能的高,胜利一场,败一场,这样的分是最低的,也就是6分,那么如果比这个还要高,那么肯定能晋级这个队。

3、所以最后的区间是【2,6】低于2分肯定淘汰,高于6分肯定晋级

编程的思想来解决:三个分就是三叉树
那么层数就是每个队伍比赛的场次,每个队伍比赛都有三种情况,根据每次比赛的不同情况,一共比赛6次,那么有了6次剪支的机会,最后保留剩余的叶子节点,看叶子节点的可能性,最后排序,选取头最低分和最高分,得出结果。
在这里插入图片描述
所以遍历3^6次数,算出每种情况下晋级的前两名,然后把所有的前两名进行排序,最后给出最大值和最小值即可。

这篇关于58同城实习面筋的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/326627

相关文章

实习项目|苍穹外卖|day7

缓存菜品 1.根据原型进行需求分析与设计(接口文档) 2.根据接口设计DTO(redis数据类型选取) 3.编码controller-》service-》mapper @GetMapping("/list")@ApiOperation("根据分类id查询菜品")public Result<List<DishVO>> list(Long categoryId) {//判断缓存

【Unity面经】实习篇:面试官常问的一百个面试题

👨‍💻个人主页:@元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 专栏交流🧧🟥Unity100个实战基础✨🎁🟦 Unity100个精华一记✨🎁🟩 Unity50个demo案例教程✨🎁🟨 Unity100个精华细节BUG✨🎁🟨 Unity100个面试题✨🎁 文章

我的第一次份实习工作-iOS实习生-第三个月

第三个月 这个月有一个考核项目,是一个电子书阅读器,组长说很重要,是我的实习考核项目。 我的项目XTReader,这是我参考网上的一些代码,和模仿咪咕阅读做的,功能还不完善,数据的部分是用聚合数据做的。要收费的。   还有阅读页面,基本功能实现了一下。使用了autolayout,自适应布局,也是第一次用网络,第一次用数据库,第一次用自动布局。还有很多不足。 做了一周多,有个问题一直没

我的第一次份实习工作-iOS实习生-公司使用过的软件

bittorrentsync 素材,文件同步软件 cornerstone svn 软件开发合作 mark man 测量坐标的软件 SQLLite Manager 数据库操作软件

我的第一次份实习工作-iOS实习生-第二个月

第二个月 来公司过了一个月了。每天早上9点上班,到晚上6.30下班,上下班要指纹打卡,第一个月忘了打卡好多次(),然后还要去补打卡单。公司这边还安排了,工资卡办理,招商银行卡。开了一次新员工大会,认识了公司的一些过往,公司的要求等,还加了一下公司的企业QQ,还有其他的羽毛球群,篮球群。我加了下羽毛球群,也去打了一两次。第二个月的感受,感觉跟组里面的交流跟沟通都好少,基本上还有好多人不认识。想想也

我的第一次份实习工作-iOS实习生-第一个月

实习时间:2015-08-20 到 2015-12-25  实习公司;福建天棣互联有限公司 实习岗位:iOS开发实习生 第一个月: 第一天来公司,前台报道后,人资带我去我工作的地方。到了那,就由一个组长带我,当时还没有我的办公桌,组长在第三排给我找了一个位置,擦了下桌子,把旁边的准备的电脑帮我装了下,因为学的是iOS,实习生就只能用黑苹果了,这是我实习用的电脑。 帮我装了一下电脑后,开机

蔚来汽车-测开日常实习-部分手撕代码题

基本上来自牛客的帖子,自己总结了一些题及其做法,之后也会更新其他公司的测开实习真题。 1.    【入门】- 输入十进制整数,输出该整数中1的数量。 感觉比较简单,不知道具体的用例,可能是特别长的输入?这样用字符串处理就行。 如果应规定输入的是long之类的数据类型,就用to_string 转为string类型即可。 int num = 123;std::string str = st

面经学习(hbkj实习)

个人评价 这次面试算是对我基础知识空缺的排查,有很多小知识点是我没有去复习到的,也是一次比较愉快的面试。  1.在java中有哪些数据属于共享变量?(共享变量怎么创建) 共享变量的形式还是很多的,首先就是今天变量进行一个共享变量。当我们需要将某个变量变成一个共享变量的时候需要使用Voliate进行修饰,使其变成共享变量。  2.多线程进行操作数据时如果不上锁为什么共享变量中的数据会被该的乱

软件综合实习——基于NoSQL数据库的空间数据存储

前言:在“软件综合实习”这门实践课中选择了一个题目《基于NoSQL数据库的空间数据存储》,基于HBase的空间数据存储和查询。此博客是这次课程设计过程中的简单记录。 GitHub项目源代码 简介 RDBM在处理中小规模数据的时候没有压力,拥有严格的数学背景支撑,擅长处理事务。然而新千年之后进入互联网时代,此时数据量极速变大,RDBM在一些大数据场景开始力不从心,世界需要新的变革,等待新的

58同城推荐系统

https://mp.weixin.qq.com/s/Jf1B1TBjLtYL-qY2TWBzug