阿里云日常实习一面

面试时间:2023/1/9

【来自同学的面试记录】

  1. 自我介绍
  2. 介绍项目
  3. 进程的组成
  4. 进程和线程的区别
  5. 构造函数、析构函数、拷贝构造函数等函数的作用
  6. 父类的析构函数为什么要申明为虚函数
  7. 代码题:手撸LRU
  8. 反问环节

大佬同学对每一个问题回答的都比较细致、而不是在背八股,所以问题个数就比较少。

大佬的面试就是稳啊,面试过程中面试官也啧啧称赞~

2023/2/10

记录一下几个问题的答案

进程的组成:

进程就是运行起来的程序的抽象

进程由程序控制块(PCB)、程序段、数据段组成

操作系统通过PCB来管理进程,因此PCB中存放操作系统对进程管理的各种信息,如进程描述信息,进程控制和管理信息,资源分配清单相关信息等。

程序段:程序代码存放的位置

数据段:程序运行时使用,产生的运算数据。如全局变量,局部变量,宏定义的常量就存放在数据段内

进程和线程的区别:

1)进程是资源分配的基本单位(包括内存,打开的文件),线程是CPU调度的基本单位

2)线程和进程相似,同样具有三种基本状态:就绪、阻塞、运行,同样具有状态之间的转换关系

3)线程能减少并发执行的时间和空间开销,具体体现在:

线程创建时间比进程快:进程创建需要大量的资源管理信息,如内存管理,文件管理,而线程不需要关心,因为线程共享这些信息

线程终止时间比进程快:线程释放的资源比进程少

线程切换更快:线程有相同地址空间,不需要切换表

线程数据传递不需要经过内核,因为线程之间共享资源

构造函数、析构函数、拷贝构造函数等函数的作用

构造函数:

构造函数在创建一个对象时,系统自动调用。如果用户没有自定义构造函数,系统会调用默认构造函数,默认构造函数会将所有歌数据成员初始化为0或者空。

构造函数都是没有返回值的。

析构函数:

析构函数没有返回值,也没有参数。一个类中只能定义一个析构函数,如果没有,系统会自动调用默认析构函数

析构函数调用条件:1)在一个函数中定义一个对象,当函数调用结束,则会自动调用析构函数来删除在这个函数体内创建的对象。包括主函数。2)用new运算符动态构建的对象,在使用delete运算符释放它时

析构函数为什么定义为虚函数?

析构函数定义成虚函数是为了防止内存泄漏,因为当基类的指针或者引用指向或绑定到派生类的对象时,如果未将基类的析构函数定义成虚函数,只会调用基类的析构函数,那么只能将基类的成员所占的空间释放掉,派生类中特有的就会无法释放内存空间导致内存泄漏。

我们将析构函数定义为虚函数,在执行析构时,则根据对象的类型来执行析构函数,此时派生类的资源得到释放。

拷贝构造函数:

拷贝构造函数实际上也是构造函数,具有一般构造函数的所有特性,其名字也与所属类名相同。拷贝构造函数中只有一个参数,这个参数是对某个同类对象的引用。

拷贝构造函数的目的是用一个已有的对象创建一个新的对象

代码题:手撸LRU

#我的实习求职记录#
全部评论
到现在没反馈,怕被奶死力最担心的是LRU那道题回答得不好,刚开始头脑一晕,想自己用一个数组来管理双链表指针空间,然后在哈希表中储存下标即可,但这样的话换页时的操作就很别扭。因为这个问题耽误了十分钟(期间面试官懵了,我也懵了),后来把这个多余的设计删了才找回状态。
4 回复 分享
发布于 2023-02-12 13:47 天津
阿里云有日常实习吗
1 回复 分享
发布于 2023-02-10 14:47 湖北
老哥面的哪个部门呀?
1 回复 分享
发布于 2023-02-11 01:54 广东
面的是本科吗? 感觉问题有点水
1 回复 分享
发布于 2023-02-12 19:47 广东
一面之后有二面消息吗
点赞 回复 分享
发布于 2023-02-10 15:47 广东
老哥,没有问项目吗
点赞 回复 分享
发布于 2023-02-10 17:10 广东
阿里云转正不是卡23所吗
点赞 回复 分享
发布于 2023-02-11 00:59 福建
我10号面的,全部问的算法和语言相关基本,其他没问。
点赞 回复 分享
发布于 2023-02-12 00:06 四川
m
点赞 回复 分享
发布于 2023-02-12 02:43 上海
挺好的面试习惯,其实面试来面试去,大部分公司面试的主要问题都是一致的。 欢迎大家关注华为云东莞和西安实习岗位。 华为云计算软件开发工程师(东莞西安)-24届实习&秋招 工作职责: 1、面向研发、运维、运营、基础设施打造安全、稳定、高效、极简的IT系统和平台,打造极致用户体验,助力高效作战,使能组织效能达到业界标杆; 2、实现云业务端到端、全数字化、在线的业务分析和运营能力,支撑华为云的价值创造和价值变现效率达到业界标杆。 技能要求: 1、ICT相关专业本科以上学历,计算机科学与技术、软件工程、计算数学、数据科学、人工智能、通信工程、网络工程、自动化等相关专业优先,编程大牛不限制。 2、热爱软件编程,致力于软件领域长期发展。 3、具有Java/Python/Java Script编程实践经验优先考虑 4、熟悉分布式计算,微服务治理,对Nignix,SpringCloud,SpringBoot, Mybatis, Redis以及MQ等相关开源组件框架有实践和了解尤佳 5、具有统计和数据处理相关理论,有机器学习和深度学习相关大数据实践经验尤佳 面向对象: 1、 国内2024年毕业的本硕以及博士 2、 海外留学生2023年以及2024年毕业的本硕以及博士。 工作地点: 1、 东莞、西安、深圳、杭州、南京、成都 实习期限:2023年6月~2024年4月之间,至少3个月,优先选择实习时间比较有保障的。 机考软件编码能力机考模拟题地址: https://www.nowcoder.com/ta/huawei, 模拟题总共有100+道,包含机考的全部题型。 应届生实习和秋招三道题目共计600分,分别为100,200,300分,及格线为100分,超过100分才能进入后续综合测评、技术以及主管面试。 实习机考通过,机考成绩秋招可以再用,实习机考没有通过,秋招可以再战。 投递指引: 1、华为官网: https://career.huawei.com/reccampportal/portal5/campus-recruitment.html 2、选择“软件开发工程师” 或者“云计算开发工程师” 或者“数字化IT应用工程师”,第一志愿选择“华为云计算” 选择投递后,请将简历和简历编号发到我邮箱:
点赞 回复 分享
发布于 2023-02-12 23:25 广东
有没有老哥面了阿里云算法的啊,我周五面了全程问简历好迷
点赞 回复 分享
发布于 2023-02-13 10:19 江苏
m
点赞 回复 分享
发布于 2023-02-14 14:52 安徽

相关推荐

点赞 评论 收藏
分享
20 181 评论
分享
牛客网
牛客企业服务