服务端Python笔试整理

选择题

  1. 文件权限 rw-rw-rw 对应数字
  2. cpu用户态变核心态
  3. STL容器
  4. Java 异步任务的接口是什么
  5. Objects 类(超类、父类)
  6. 系统调用有操作系统的什么提供的(内核?动态库?)
  7. 关系模式、第三范式
  8. 10个叶子结点的二叉树,度为2的结点个数?
  9. JOIN ,sql 算子,优化(Left Outer 、Inner Outer、Full Outer)
  10. 守护进程 daemon
  11. Java 反射
  12. Select From Where limit 语句执行顺序
  13. tcp协议 (扩展sack)
  14. IPv6
  15. DHCP 客户端、服务端、中继代理 号码
  16. 继承基类的public 成员
  17. int main(){ fork() || fork() printf(‘x’) sleep(1) exit(0)} 输出

算法题

  1. 两个点之间构成的长方形,长为x的差,宽为y的min。给定点的y,x为序号。如[4,1,2,7] 就是(0,4),(1,1),(2,2),(3,7),求两个点组成的长方形面积最大是多少?

输入:
'[4,1,2,7]'
输出:
12

分析

area = width * height = abs(x1-x2) * min(y1,y2)
直接双循环暴力解法,ac了,也懒得想了

代码

import sys
for line in sys.stdin:
	# 输入[1:-1]这里去掉了首尾的【】,-2是调试出来的,没仔细看,估计多了个空格
    inputs = line[1:-2].split(',')
       
inputs_ = list(map(int,inputs)) 

points = [(i,item) for i,item in enumerate(inputs_)]

def computeArea(p1,p2):
    width = abs(p1[0]-p2[0])
    height = min(p1[1],p2[1])
    return width * height
maxArea = 0
for i in range(len(points)):
    for j in range(len(points)- i -1):
        p1,p2 = points[i],points[i+j+1]
        area = computeArea(p1,p2)
        if area > maxArea:
            maxArea = area
print(maxArea)
            
  1. 城市之间构成有向无环图,求从0到4有多少种方式?

输入:
[[1,2,3],[3],[3],[4],[]]
输出:
3

分析

图的遍历想到了bfs/dfs
求多少种方式想到了动态规划,尝试倒序开始

  • 找能到 4 的,是 [3]
  • 找能到 3 的,是 [0,1,2]
    • 0
    • 能到 1 的,是 [0]
    • 能到 2 的,是 [0]

可以看到,找到 0,有三种方式
往前找的话,滑窗减小
(写到这突然发现也可以正序。。。,ac了,就这样吧,毁灭吧)

代码

#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 计算dag 路径上起始到目的节点的路径数目
# @param nodes int整型二维数组 第 i 个数组中的单元都表示有向图中 i 号节点所能到达的下一些结点(译者注:有向图是有方向的,即规定了 a→b 你就不能从 b→a ),若为空,就是没有下一个节点了。
# @return int整型
#
class Solution:
    def DagPathNum(self , nodes: List[List[int]]) -> int:
        res = []
        def dfs(num,nodes,res):
            for i,item in enumerate(nodes):
                if num in item:
                    if i == 0:
                        res.append(num)

                    dfs(i,nodes[:-(len(nodes)-i)],res)

        dfs(len(nodes)-1,nodes,res)  
        ans = len(res)
        return ans
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据引用的内容,力扣的hot100和《剑指offer》是笔试部分的重点内容,需要认真学习和掌握。这些题目涵盖了各个方面的算法和数据结构,是面试过程中常见的考点。同时,根据引用的建议,可以考虑刷洛谷官方题单,除了NOI-紫题或者省选-蓝题,其他题目都是可以考虑的。这些题目能够帮助你系统地打好基础知识,并提供充足的练习机会。 对于哔哩哔哩服务端开发的笔试题目,根据引用的内容,可以考虑学习《Essential C》,这是一本关于C编程的书籍,可以帮助你掌握C语言的基础知识和常用编程技巧。此外,还可以关注黑马C的教学视频,这是一个包含314个视频的系列课程,涵盖了广泛的C语言知识点和实践项目,可以帮助你系统地学习和理解C语言的开发技术。 总之,在准备哔哩哔哩服务端开发的笔试题目时,建议重点关注算法和数据结构,通过刷题和学习相关资料来提高自己的编程能力。同时,掌握C语言的基础知识和常用编程技巧也是非常重要的。通过学习《Essential C》和观看黑马C的教学视频,可以系统地学习和理解C语言的开发技术。这样,你就能更好地应对哔哩哔哩服务端开发的笔试题目了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [大一下暑期计划 + 2023字节青训营预告直播](https://blog.csdn.net/csdner250/article/details/131315170)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值