1.技术面试题

(1)解释Linux中的进程、线程和守护进程的概念,以及如何管理它们?

答:
进程
概念:程序运行的实例,有独立资源(如内存),是系统调度的基本单位。
管理ps 看进程,kill 终止,nice/renice 调优先级。

线程
概念:进程里的执行单元,多个线程共享进程资源,开销小,适合并发。
管理:通过编程语言线程库(如 pthread)创建 / 控制,gdb 调试。

守护进程
概念:后台长期运行的进程,无终端关联,系统启动时启动(如 httpd)。
管理systemctlservice 命令启动 / 停止 / 查状态。

(2)请详细描述OSI七层模型和TCP/IP四层模型,并说明它们之间的对应关系。每一层的主要功能是什么?各层有哪些典型的协议?

答:

OSI 七层模型

  1. 物理层:传输原始比特流(0/1),协议如 Ethernet 物理层、RS-232。
  2. 数据链路层:封装比特流为帧,通过 MAC 地址通信,处理错误,协议如 Ethernet、PPP、ARP。
  3. 网络层:通过 IP 地址路由,实现跨网络传输,协议如 IP、ICMP、OSPF。
  4. 传输层:端到端数据传输(可靠 / 高效),协议如 TCP(可靠)、UDP(高效)。
  5. 会话层:建立 / 管理进程会话(如登录状态),协议如 RPC。
  6. 表示层:数据格式转换、加密(如编码、SSL),协议如 JPEG、SSL/TLS。
  7. 应用层:为应用程序提供服务,协议如 HTTP、FTP、DNS。

TCP/IP 四层模型

  1. 网络接口层:对应 OSI 物理层 + 数据链路层,协议如 Ethernet、ARP。
  2. 网络层:同 OSI 网络层,协议如 IP、ICMP。
  3. 传输层:同 OSI 传输层,协议如 TCP、UDP。
  4. 应用层:合并 OSI 会话层 + 表示层 + 应用层,协议如 HTTP、DNS。

对应关系

  • TCP/IP 网络接口层 → OSI 物理层 + 数据链路层
  • TCP/IP 网络层 → OSI 网络层
  • TCP/IP 传输层 → OSI 传输层
  • TCP/IP 应用层 → OSI 会话层 + 表示层 + 应用层

(3)详细介绍什么是最大堆/最小堆。

答:

最大堆

  • 定义:一种完全二叉树,每个父节点的值 大于等于 其左右子节点的值(根节点是最大值)。
  • 特点:根节点为堆中最大元素,插入 / 删除时需调整结构维持特性。

最小堆

  • 定义:一种完全二叉树,每个父节点的值 小于等于 其左右子节点的值(根节点是最小值)。
  • 特点:根节点为堆中最小元素,同样需动态调整维持特性。

两者均用于高效获取极值(如最大 / 最小值),常见于优先队列、堆排序等场景。

(4)详细介绍什么是二分搜索树。

答:

二分搜索树(BST)是一种有序二叉树:

  • 左子树所有节点值 小于 根节点值;
  • 右子树所有节点值 大于 根节点值;
  • 左右子树也为二分搜索树。

特点:支持高效的查找、插入、删除操作(平均时间复杂度 O (logn)),常用于动态数据的有序管理。

2.HR面试题

(1)我们非常欣赏你的能力,但目前只能提供比你期望薪资低20%的offer。在这种情况下,你会接受这份工作吗?如果接受,你对未来薪资增长有什么期望?如果不接受,你的底线是什么?

答:

感谢您的认可,也特别理解公司可能有现阶段的考量。但这个薪资差距确实超出了我能接受的范围,这不仅关系到我现阶段的生活规划,也是对自己能力和过往经验的基本衡量,所以这次可能没办法接受。

不过我真心很看重这个机会,如果公司觉得我确实是合适的人选,能否咱们约定一下:比如入职后 3 个月,我会全力以赴做出业绩,到时候咱们根据我的实际表现,把薪资调整到我最初期望的水平?这样既不辜负您的信任,也能让我更安心地投入工作。如果这个约定能达成,我非常愿意加入;如果实在有难度,那这次只能遗憾错过了,也希望以后还有合作的可能。

(2)我们公司经常需要加班到深夜,有时甚至需要周末工作。你如何看待这种工作强度?你认为工作与生活的理想平衡点在哪里?

答:我个人不太倾向于频繁加班到深夜,更希望能尽量避免占用周末时间。平时工作时我会集中精力高效完成任务,争取准时下班,留出时间处理生活琐事、放松调整,这样才能保持稳定的工作状态。当然,如果遇到项目紧急、确实需要赶工的情况,偶尔加班我是可以理解和配合的,但长期这样肯定不行,身体和精力都扛不住。如果需要加班,我希望能有符合预期的加班费作为补偿,这样付出和回报能对等一些。

对我来说,工作与生活的理想平衡就是:平时各有边界,工作时专注投入,生活时能踏实放松;偶尔需要打破平衡加班时,能有合理的回报来弥补,不让这种失衡成为常态,这样才能长久可持续。

(3)你认为自己最大的优势是什么?这个优势如何帮助你胜任我们这个岗位?

答:我的核心优势在于持续学习能力和快速掌握新技术的能力,这在云计算这个技术迭代迅速的领域尤为重要。我能够高效地消化吸收各类云平台的技术文档和最佳实践,无论是主流云服务商的基础架构还是新兴的云原生技术,都能在短时间内理解其核心原理并上手应用。这种能力使我不仅能够快速适应企业现有的云技术栈,更能跟进行业发展趋势,为企业未来的技术升级做好准备。在云计算这个日新月异的领域,我这种持续进化的技术适应力,相比静态的知识储备更能创造长期价值。

(4)你认为这份工作能为你带来什么?你能为公司创造什么价值?

答:这份工作能为我提供宝贵的实战机会,将我的云计算知识转化为真正的生产力,同时让我在专业团队中快速积累行业经验。作为新人,我尤其看重贵公司在云计算领域的成熟技术栈和规范流程,这能帮助我建立扎实的技术根基。

而我能为公司带来的价值是:用快速学习能力迅速填补经验缺口,以高度执行力完成基础性技术工作,同时保持对新技术趋势的敏感度。在团队中,我会成为可靠的技术执行者,随着经验积累逐步承担更复杂的云架构任务,最终成长为既能踏实运维又懂创新优化的综合型云技术人才。

3.问答题

(1)以下代码运行结果是?并阐述函数func的主要功能是什么?

def func(lst):result = []for i in range(len(lst)):if i == len(lst) - 1:result.append(lst[i] * 2)elif lst[i] < lst[i+1]:result.append(lst[i] + 1)else:result.append(lst[i] - 1)return resultprint(func([5, 3, 7, 2]))

答:运行结果:[4,4,6,4]

主要功能:按规则(相邻元素比较、最后一个元素加倍)转换列表元素并返回新列表 。

(2)以下代码运行结果是?并阐述函数func的主要功能是什么?

def func(lst):result = []for num in lst:if num % 3 == 0:result.append(num // 3)elif num % 2 == 0:result.append(num * 2)if num > 10:breakelse:result.append(num + 1)return resultprint(func([9, 4, 12, 7, 14]))

答:运行结果:[3, 8, 4, 8, 28]

主要功能:按元素是否被 3/2 整除的规则转换,且在 “能被 2 整除且>10” 时处理当前元素后终止循环。

(3)以下代码运行结果是?并阐述函数func的主要功能是什么?

def func(nums1, m, nums2, n):i = j = k = 0temp = nums1.copy()while i < m and j < n:if temp[i] < nums2[j]:nums1[k] = temp[i]i += 1else:nums1[k] = nums2[j]j += 1k += 1while i < m:nums1[k] = temp[i]i += 1k += 1return nums1nums1 = [1, 3, 5, 0, 0]
m = 3
nums2 = [2, 4]
n = 2
print(func(nums1, m, nums2, n))

答:运行结果:[1, 2, 3, 4, 5]

主要功能:合并两个有序子数组(nums1m 个、nums2n 个)到 nums1 ,使其整体升序。

(4)以下代码运行结果是?并阐述函数func的主要功能是什么?

def func(lst):total = 0for i in range(len(lst)):if i % 2 == 0:total += lst[i]else:total -= lst[i]if total < 0:total = 0return totalprint(func([5, 3, 2, 7, 1]))

答:运行结果:1

主要功能:按索引奇偶交替加减元素值,负数结果重置为 0,最终返回计算总和。

(5)以下代码运行结果是?并阐述函数func的主要功能是什么?

def func(lst):evens = []odds = []for num in lst:if num % 2 == 0:evens.append(num)else:odds.append(num)evens.sort()odds.sort(reverse=True)return evens + oddsprint(func([3, 1, 4, 1, 5, 9, 2, 6, 5]))

答:运行结果:[2, 4, 6, 9, 5, 5, 3, 1, 1]

主要功能:奇偶分离后,偶数升序、奇数降序,再拼接输出。

(6)以下代码运行结果是?并阐述函数func的主要功能是什么?

def func(lst):result = []for i in range(len(lst)):current = lst.pop(0)if current % 2 == 0:lst.append(current * 2)else:result.append(current)return result + lstdata = [1, 2, 3, 4, 5]
print(func(data))

答:运行结果:[1, 3, 5, 4, 8]

主要功能:分离列表中的奇数并收集,对偶数翻倍后放回原列表,最终返回奇数列表与处理后偶数列表的拼接结果。

(7)以下代码运行结果是?并阐述函数func的主要功能是什么?

def func(lst):result = []for i in range(len(lst)):for j in range(i+1, len(lst)):if lst[i] + lst[j] == 10:result.append((lst[i], lst[j]))breakreturn resultprint(func([5, 3, 7, 2, 8]))

答:运行结果:[(3, 7), (2, 8)]

主要功能:提取列表中 “和为 10” 的数对(每个数对仅找第一个匹配,不重复)

(8)编写程序,反素数

反素数是指一个将其逆向拼写后也是一个素数的非回文数,例如17和71都是素数但不是回文数,且反转后依旧是素数

输出显示前100个反素数,每行显示10个

答:

def is_prime(num):if num < 2:return Falsefor i in range(2, int(num ** 0.5) + 1):if num % i == 0:return Falsereturn Truedef is_palindrome(num):return str(num) == str(num)[::-1]count = 0
num = 10
result = []
while count < 100:if not is_palindrome(num) and is_prime(num) and is_prime(int(str(num)[::-1])):result.append(num)count += 1num += 1for i in range(0, 100, 10):print(*result[i:i + 10])

(9)编写程序,梅森素数

如果一个素数可以写成2p−12p−1的形式,其中p是某个正整数,那么这个素数就称作梅森素数

输出p≤31的所有梅森素数

答:

def is_prime(num):if num < 2:return Falsefor i in range(2, int(num**0.5) + 1):if num % i == 0:return Falsereturn Truefor p in range(1, 32):j = 2**p - 1if is_prime(p) and is_prime(j):print(f"p={p}, 梅森素数={j}")

(10)编写程序,数列求和

编写一个函数计算下面的数列:

m(i)=12+23+...+ii+1m(i)=12+23+...+ii+1 m(i)=12+23+...+ii+1m(i)=12+23+...+ii+1 m(i)=12+23+...+ii+1m(i)=12+23+...+ii+1
并输出测试结果:

i		m(i)
1		0.500
2		1.16
...		
19		16.40
20		17/35

答:

def calculate_m(i):result = 0.0for n in range(1, i + 1):result += n / (n + 1)return resultfor i in range(1, 21):j = calculate_m(i)print(f"{i}\t{j:.3f}")

(11)编写程序,组合问题

有1、2、3、4这个四个数字,能组成多少个互不相同且无重复数字的三位数?分别又是多少?

答:

result = []
for i in range(1, 5):for j in range(1, 5):if j  ==  i :continuefor k in range(1, 5):if k ==  i  or k == j :continueresult.append( i  * 100 + j  * 10 + k)
print(f"能组成 {len(result)} 个符合条件的三位数,分别是:")
for num in result:print(num, end=" ")

(12)编写程序,计算e

你可以使用下面的数列近似计算e

e=1+11!+12!+13!+14!+...+1i!e=1+11!+12!+13!+14!+...+1i! e=1+11!+12!+13!+14!+...+1i!e=1+11!+12!+13!+14!+...+1i! e=1+11!+12!+13!+14!+...+1i!e=1+11!+12!+13!+14!+...+1i!
当i越大时,计算结果越近似于e

答:

def factorial(n):result = 1for i in range(1, n + 1):result *= ireturn resulti = 10
e = 1
for n in range(1, i + 1):e += 1 / factorial(n)
print(f"e 的近似值为: {e:.10f}")

(13)编写程序,完全数

如果一个正整数等于除了它本身之外所有正因子的和,那么这个数称为完全数

例如 6 = 3 + 2 + 1,28 = 14 + 7 + 4 + 2 + 1

输入输出描述

输入一个正整数

输出该数是否为完全数

示例1

输入:

6

输出:

Yes

示例2

输入:

9

输出:

No

答:

num = int(input("请输入一个正整数:"))
factor_sum = 0
for i in range(1, num):if num % i == 0:factor_sum += i
print("Yes" if factor_sum == num else "No")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/89305.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/89305.shtml
英文地址,请注明出处:http://en.pswp.cn/web/89305.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Debian 12中利用dpkg命令安装MariaDB 11.8.2

MariaDB 11.8解决了2038问题&#xff0c;即在32位系统中将timestamp从2038-01-19 03:14:07 UTC扩展到2106-02-07 06:28:15 UTC&#xff0c;向后延长了68年。由于写此文时Debian 12的源中还没有MariaDB 11.8,采用源码编译又太费时&#xff0c;可用二进制码或dpkg安装 .下面简要记…

Go语言高并发聊天室(三):性能优化与压力测试

Go语言高并发聊天室&#xff08;三&#xff09;&#xff1a;性能优化与压力测试 &#x1f3af; 本篇目标 在前两篇文章中&#xff0c;我们完成了聊天室的基础功能。本篇将深入性能优化&#xff0c;实现真正的高并发&#xff1a; &#x1f50d; 性能瓶颈分析⚡ 关键优化技术&…

【leetcode】852. 山脉数组的封顶索引

文章目录题目题解1. 遍历2. 二分查找题目 852. 山脉数组的封顶索引 给定一个长度为 n 的整数 山脉 数组 arr &#xff0c;其中的值递增到一个 峰值元素 然后递减。 返回峰值元素的下标。 你必须设计并实现时间复杂度为 O(log(n)) 的解决方案。 示例 1&#xff1a; 输入&a…

Java期末考试准备

文章目录Java期末考试准备一、Java的输入.next()输入.nextLine()输入区别补充二、Java的输出三、类中常写方法toString()equals()其他四、容器/数组五、继承六、静态属性、方法.七、抽象类八、接口九、初始化模块十、泛型考完结束语Java学习历程注:这篇文章本来是写给同学的&am…

飞算JavaAI进阶:重塑Java开发范式的AI革命

引言&#xff1a;当代码生成进入"自动驾驶"时代 在2025年的Java开发领域&#xff0c;一场由AI驱动的革命正在重塑传统开发范式。当GitHub Copilot还在通过代码补全提升效率时&#xff0c;飞算JavaAI已实现从需求分析到完整工程代码生成的"端到端"闭环。这款…

如何在银河麒麟桌面系统中启用 sudo 密码的星号反馈

引文 我们在银河麒麟桌面操作系统上使用 sudo 命令时&#xff0c;都遇到过这样的困扰&#xff1a;输入密码时光标一动不动&#xff0c;屏幕上没有任何提示&#xff08;没有星号 *&#xff0c;也没有任何字符&#xff09;&#xff1f;就像在黑暗中摸索钥匙孔一样&#xff0c;心里…

二刷 黑马点评 秒杀优化

优化逻辑 把耗时较短的逻辑判断放入redsi中&#xff0c;比如库存是否足够以及是否一人一单&#xff0c;只要这样的逻辑完成&#xff0c;就代表一定能下单成功&#xff0c;我们就将结果返回给用户&#xff0c;然后我们再开一个线程慢慢执行队列中的信息 问题&#xff1a; 如何快…

HANA SQLScript中的变量类型汇总

在 SAP HANA SQLScript 中&#xff0c;可以使用多种变量类型&#xff0c;包括标量&#xff08;Scalar&#xff09;类型、表类型和结构化类型。以下是各种变量类型的详细说明和示例。1. 标量变量&#xff08;Scalar Variables&#xff09; 标量变量是用于存储单个值&#xff08;…

基于 Amazon Nova Sonic 和 MCP 构建语音交互 Agent

1、引言 随着人工智能技术的飞速发展&#xff0c;自然语言处理和语音交互技术正在深刻改变人机交互的方式。语音交互正从简单的“机械应答”向更自然的“类人对话”演进 。传统的语音系统通常采用模块化架构&#xff0c;将语音处理流程割裂为 ASR&#xff08;自动语音识别&…

项目的存量接口怎么低成本接入MCP?

项目的存量接口怎么低成本接入MCP&#xff1f; 老项目里的一些接口&#xff0c;如何低成本的接入MCP&#xff08;0成本不可能&#xff09;&#xff0c;变成MCP server 的tools&#xff1f; 先抛出这个问题&#xff1f;评论区的xdm如果有懂的&#xff0c;可以打在评论区&#xf…

用图片生成高保真3D模型!Hi3DGen以法线为桥,为高清三维几何生成另辟蹊径

主页&#xff1a;http://qingkeai.online/ 原文&#xff1a;用图片生成高保真3D模型&#xff01;Hi3DGen以法线为桥&#xff0c;为高清三维几何生成另辟蹊径 随着从二维图像构建高保真三维模型的需求日益增长&#xff0c;现有方法由于域间隙的限制以及 RGB 图像固有的模糊性&a…

Charles抓包工具中文安装和使用详解,快速掌握API调试与网络优化

Charles抓包工具中文安装和使用详解 在软件开发中&#xff0c;调试API请求、捕获网络流量以及优化应用性能是开发者日常工作中不可或缺的环节。Charles抓包工具作为业内领先的网络调试工具&#xff0c;以其功能强大、易用性高、支持HTTPS流量解密等特点&#xff0c;广泛应用于A…

Java :List,LinkedList,ArrayList

文章目录List常用方法List集合的遍历方式ArrayList底层的原理LinkedList底层原理常用方法List常用方法 //1.创建一个ArrayList集合对象&#xff08;有序、有索引、可以重复&#xff09; List<String> list new ArrayList<>(); list.add("蜘蛛精"); list…

LLM面试题及讲解 4

LLM面试题及讲解 4 目录 LLM面试题及讲解 4 题目讲解 一、基础概念与理论 二、模型训练与优化 三、应用与实践 四、前沿研究与趋势 大型语言模型(LLM)的核心特征是什么? LLM与传统NLP技术的本质区别是什么? Transformer架构的基本组成部分有哪些?其在LLM中为何重要? BERT…

Harmony-Next鸿蒙实战开发项目-仿小米商城App----V2

1.、简介 本项目是Harmony-Next原生开发&#xff0c;真实网络请求。采用V2等状态管理装饰器。包含&#xff08;首页、分类、发现、购物车、我的、登录、搜索&#xff0c;搜索结果&#xff0c;商品详情等&#xff09;.包含V2对接口返回数据的深度监听。 2、页面展示&#xff1…

python闭包和装饰器(超详解)

目录 一、闭包的概念 1.概念 2.闭包的特征 3.闭包的作用 二、装饰器 1.什么是装饰器 2.装饰器的作用 1.统计代码耗时 2.对代码进行权限检查 3.记录日志 3.闭包和装饰器的关系 4.注意事项&#xff1a; 一、闭包的概念 1.概念 闭包&#xff08;Closure&#xff09;指…

解决hadoop常用到的问题

1.namenode无法启动问题 报错1. ERROR: Attempting to operate on hdfs namenode as root ERROR: but there is no HDFS_NAMENODE_USER defined. 原因&#xff1a;不能用 root 用户直接启动 Hadoop 的 HDFS 组件&#xff08;NameNode / DataNode / SecondaryNameNode&#xff0…

深度学习G3周:CGAN入门(生成手势图像)

&#x1f368; 本文为&#x1f517;365天深度学习训练营中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 基础任务&#xff1a; 1.条件生成对抗网络&#xff08;CGAN&#xff09;的基本原理 2.CGAN是如何实现条件控制的 3.学习本文CGAN代码&#xff0c;并跑通代码…

流式数据处理实战:用状态机 + scan 优雅过滤 AI 响应中的 `<think>` 标签

流式数据处理实战&#xff1a;用状态机 scan 优雅过滤 AI 响应中的 <think> 标签 1. 引言&#xff1a;流式数据处理的挑战 在现代 AI 应用开发中&#xff0c;流式 API&#xff08;如 OpenAI、Claude 等&#xff09;能实时返回分块数据&#xff0c;提升用户体验。但流式…

【实时Linux实战系列】硬件中断与实时性

在实时系统中&#xff0c;硬件中断是系统响应外部事件的关键机制之一。硬件中断允许系统在执行任务时被外部事件打断&#xff0c;从而快速响应这些事件。然而&#xff0c;中断处理不当可能会导致系统延迟增加&#xff0c;影响系统的实时性。因此&#xff0c;优化中断处理对于提…