求职笔试题

PDD

最长公共子序列

1143-最长公共子序列
在这里插入图片描述

class Solution:def longestCommonSubsequence(self, text1: str, text2: str) -> int:"""二维动态规划"""m, n = len(text1), len(text2)# dp = [[0]* (n+1)] * (m+1)  这种写法错误,m+1行会共享存储dp = [[0] * (n + 1) for _ in range(m + 1)]print('dp2', len(dp), len(dp[0]))for i in range(1, m+1):for j in range(1, n+1):if text1[i-1] == text2[j-1]:dp[i][j] = dp[i-1][j-1] + 1else:dp[i][j] = max(dp[i-1][j], dp[i][j-1])return dp[-1][-1]

在这里插入图片描述

岛屿数量

200-岛屿数量
在这里插入图片描述

class Solution:def numIslands(self, grid: List[List[str]]) -> int:"""遇到1,深度优先搜索(递归遍历上下左右 类比二叉树),搜索到后置为0 防止再次搜索"""def dfs(grid, i, j):if not 0 <= i < len(grid) or not 0 <= j < len(grid[0]) or grid[i][j] == '0':returngrid[i][j] = '0'dfs(grid, i-1, j)dfs(grid, i, j-1)dfs(grid, i, j+1)dfs(grid, i+1, j)cnt = 0for i in range(len(grid)):for j in range(len(grid[0])):if grid[i][j] == '1':dfs(grid, i, j)cnt += 1return cnt

x的平方根

69-x的平方根
在这里插入图片描述

class Solution:def mySqrt(self, x: int) -> int:"""二分查找"""left, right = 0, xwhile left <= right:mid = (left + right) // 2if mid * mid <= x:left = mid + 1else:right = mid - 1else:mid = (left + right) // 2return mid

智谱

气温变化趋势

LCP 61. 气温变化趋势
在这里插入图片描述

class Solution:def temperatureTrend(self, temperatureA: List[int], temperatureB: List[int]) -> int:def trans(t1, t2):"""获取趋势"""if t2 > t1:return '+'elif t2 == t1:return '0'else:return '-'occ_cnt, max_occ = 0, 0for i in range(1, len(temperatureA)):if trans(temperatureA[i-1], temperatureA[i]) == trans(temperatureB[i-1], temperatureB[i]):occ_cnt += 1else:max_occ = max(max_occ, occ_cnt)occ_cnt = 0max_occ = max(max_occ, occ_cnt)return max_occ

数组创建二叉树

from typing import List, Optionalclass TreeNode:def __init__(self, val=0, left=None, right=None):self.val = valself.left = leftself.right = rightdef array_to_btree(arr: List[Optional[int]], index: int = 0) -> Optional[TreeNode]:"""递归地将数组转换为二叉树。:param arr: 包含树节点值的列表,其中 None 代表空节点。:param index: 当前索引,默认从0开始。:return: 二叉树的根节点。"""if index >= len(arr):return Noneroot = TreeNode(arr[index])root.left = array_to_btree(arr, 2 * index + 1)root.right = array_to_btree(arr, 2 * index + 2)return rootdef preorder_traversal(root: Optional[TreeNode]):"""前序遍历二叉树"""if root:print(root.val, end=" ")preorder_traversal(root.left)preorder_traversal(root.right)# 示例数组,表示按层序遍历的二叉树
arr = [1, 2, 3, 4, 5, 6, 7]
tree_root = array_to_btree(arr)
print("前序遍历结果:")
preorder_traversal(tree_root)
# 栈
def array_to_btree(arr: List[Optional[int]]) -> Optional[TreeNode]:"""使用栈将数组转换为二叉树。:param arr: 包含树节点值的列表,其中 None 代表空节点。:return: 二叉树的根节点。"""if not arr:return Noneroot = TreeNode(arr[0])stack = [(root, 0)]while stack:node, index = stack.pop()left_index, right_index = 2 * index + 1, 2 * index + 2if left_index < len(arr) and arr[left_index] is not None:node.left = TreeNode(arr[left_index])stack.append((node.left, left_index))if right_index < len(arr) and arr[right_index] is not None:node.right = TreeNode(arr[right_index])stack.append((node.right, right_index))return root

虾皮

多头自注意力

import torch
import torch.nn as nnclass MultiHeadSelfAttention(nn.Module):def __init__(self, embed_dim, num_heads, dropout=0.1):super(MultiHeadSelfAttention, self).__init__()assert embed_dim % num_heads == 0, "Embedding dimension must be divisible by number of heads"self.num_heads = num_headsself.head_dim = embed_dim // num_headsself.scale = self.head_dim ** 0.5# Linear layers for query, key, and valueself.qkv = nn.Linear(embed_dim, embed_dim * 3)self.out = nn.Linear(embed_dim, embed_dim)self.dropout = nn.Dropout(dropout)def forward(self, x):batch_size, seq_len, embed_dim = x.size()# Generate Q, K, V from inputqkv = self.qkv(x)  # (batch_size, seq_len, embed_dim * 3)qkv = qkv.view(batch_size, seq_len, 3, self.num_heads, self.head_dim)q, k, v = qkv.permute(2, 0, 3, 1, 4)  # (3, batch_size, num_heads, seq_len, head_dim)# Scaled dot-product attentionscores = torch.matmul(q, k.transpose(-2, -1)) / self.scale  # (batch_size, num_heads, seq_len, seq_len)attn = torch.softmax(scores, dim=-1)attn = self.dropout(attn)out = torch.matmul(attn, v)  # (batch_size, num_heads, seq_len, head_dim)out = out.permute(0, 2, 1, 3).contiguous()  # (batch_size, seq_len, num_heads, head_dim)out = out.view(batch_size, seq_len, -1)  # (batch_size, seq_len, embed_dim)# Final linear projectionout = self.out(out)return out# 示例
batch_size = 2
seq_len = 4
embed_dim = 32
num_heads = 4x = torch.randn(batch_size, seq_len, embed_dim)
attention = MultiHeadSelfAttention(embed_dim, num_heads)
output = attention(x)print("Input shape:", x.shape)
print("Output shape:", output.shape)

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

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

相关文章

【Ragflow】6. Ragflow-plus重磅更新:增加用户后台管理系统

概述 Ragflow本身并不包含用户管理的功能&#xff0c;我在系列前文中&#xff0c;写过一个脚本&#xff0c;用来批量插入用户&#xff0c;并自动加入团队&#xff0c;配置默认模型设置。然而&#xff0c;此方式需要用户安装对应环境&#xff0c;对普通用户并不友好。 因此我开…

什么是贴源库

贴源库的定义与核心概念 贴源库&#xff08;Operational Data Store, ODS&#xff09;是数据架构中的基础层&#xff0c;通常作为数据仓库或数据中台的第一层&#xff0c;负责从业务系统直接抽取、存储原始数据&#xff0c;并保持与源系统的高度一致性。其核心在于“贴近源头”…

MSTP+VRRP三层架构综合实验

一、实验目的 掌握VLAN、VRRP、STP和Eth-Trunk的基本配置方法。 实现内网与外网的通信&#xff0c;并确保网络的高可用性和冗余性。 理解DHCP、OSPF和NAT在网络中的应用。 二、实验环境 网络拓扑&#xff1a;如图所示&#xff0c;包含两台三层交换机&#xff08;SW1、SW2&a…

未来村庄智慧灯杆:点亮乡村智慧生活​

在乡村振兴与数字乡村建设的时代进程中&#xff0c;未来村庄智慧灯杆凭借其多功能集成与智能化特性&#xff0c;已成为乡村基础设施建设领域的崭新焦点&#xff0c;为乡村生活带来了前所未有的便利&#xff0c;推动着乡村生活模式的深刻变革。​ 多功能集成&#xff1a;一杆多能…

RedHatLinux(2025.3.22)

1、创建/www目录&#xff0c;在/www目录下新建name和https目录&#xff0c;在name和https目录下分别创建一个index.htm1文件&#xff0c;name下面的index.html 文件中包含当前主机的主机名&#xff0c;https目录下的index.htm1文件中包含当前主机的ip地址。 &#xff08;1&…

第十五章:Python的Pandas库详解及常见用法

在数据分析领域&#xff0c;Python的Pandas库是一个不可或缺的工具。它提供了高效的数据结构和数据分析工具&#xff0c;使得数据处理变得简单而直观。本文将详细介绍Pandas库的基本功能、常见用法&#xff0c;并通过示例代码演示如何使用Pandas进行数据处理。最后&#xff0c;…

算法为舟 思想为楫:AI时代,创作何为?

在科技浪潮汹涌澎湃的当下,AI技术以前所未有的态势席卷各个领域,创作领域亦未能幸免。当生成式AI展现出在剧本撰写、诗歌创作、图像设计等方面的惊人能力时,人类创作者仿佛置身于文明演化的十字路口,迷茫与困惑交织,兴奋与担忧并存。在AI时代,创作究竟该何去何从?这不仅…

[Raspberry Pi]如何將看門狗(WatchDog)服務建置在樹莓派的Ubuntu作業系統中?

看門狗(WatchDog)服務常應用於連網的嵌入式邊緣設備等IOT裝置和實體伺服器&#xff0c;主要是若這些連網裝置分散在各個應用環境中執行對應任務&#xff0c;例如感測物理數據&#xff0c;監控影像數據或執行各式Docker服務&#xff0c;當連網裝置因故異常&#xff0c;同時又處於…

Linux进程状态补充(10)

文章目录 前言一、阻塞二、挂起三、运行R四、休眠D五、四个重要概念总结 前言 上篇内容大家看的云里雾里&#xff0c;这实在是正常不过&#xff0c;因为例如 写实拷贝 等一些概念的深层原理我还没有讲解&#xff0c;大家不用紧张&#xff0c;我们继续往下学习就行&#xff01;&…

RPCGC阅读

24年的MM 创新 现有点云压缩工作主要集中在保真度优化上。 而在实际应用中&#xff0c;压缩的目的是促进机器分析。例如&#xff0c;在自动驾驶中&#xff0c;有损压缩会显着丢失户外场景的详细信息。在三维重建中&#xff0c;压缩过程也会导致场景数据中语义信息(Contour)的…

keil中文注释出现乱码怎么解决

keil中文注释出现乱码怎么解决 在keil–edit–configuration中encoding改为chinese-GB2312

Linux的进程优先级调度学习笔记

Linux的进程优先级数值范围 范围 -20 到 19&#xff0c;数值越大优先级越低 示例代码 下面是一个简单的 C 语言示例&#xff0c;它演示了如何在 Linux 下修改进程的优先级并观察调度影响。 #include <stdio.h> #include <stdlib.h> #include <unistd.h> …

YOLOv8+ Deepsort+Pyqt5车速检测系统

该系统通过YOLOv8进行高效的目标检测与分割&#xff0c;结合DeepSORT算法完成目标的实时跟踪&#xff0c;并利用GPU加速技术提升处理速度。系统支持模块化设计&#xff0c;可导入其他权重文件以适应不同场景需求&#xff0c;同时提供自定义配置选项&#xff0c;如显示标签和保存…

权限提升—Windows权限提升进程注入令牌窃取服务启动

前言 依旧是提权的内容啦&#xff0c;上次讲的是利用漏洞来进行提权&#xff0c;今天我们主要讲的是利用Windows中的服务、进程等东西进行权限提升。 服务启动 首先要知道一点&#xff0c;就是windows中服务是以system权限运行的&#xff0c;假如我们创建一个运行后门的服务…

数据结构与算法——顺序表之手撕OJ题

文章目录 一、前言二、拿捏OJ题2.1移除元素2.2删除有序数组中的重复项2.3合并两个有序数组 三、总结 一、前言 Do you study today?up在上一次已经讲解完毕了有关顺序表的所有知识&#xff0c;不知道大家是否已经沉淀完毕了呢&#xff1f;有一句老话说得好啊——光看不练假把…

如何在 AI 搜索引擎(GEO)霸屏曝光,快速提升知名度?

虽然大多数人仍然使用 Google 来寻找答案&#xff0c;但正在发生快速转变。ChatGPT、Copilot、Perplexity 和 DeepSeek 等 LLM 已成为主流。这主要是因为每个都有自己的免费和公共版本&#xff0c;并且总是有重大的质量改进。 许多人每天都使用这些工具来提问和搜索互联网&…

4.训练篇2-毕设篇

resnet # 1. 从 torchvision 中加载预训练的 ResNet18 模型 # pretrainedTrue 表示使用在 ImageNet 上预训练过的参数&#xff0c;学习效果更好 base_model_resnet18 models.resnet18(pretrainedTrue)# 2. 获取 ResNet18 模型中全连接层&#xff08;fc&#xff09;的输入特征…

电磁兼容EMC概述

最近重新学了下电磁兼容&#xff0c;对这个东西更清晰了一些&#xff0c;就重新写了一篇&#xff0c;有不足的地方欢迎的大家在评论区里和我交流。 电磁兼容 电磁兼容指的是什么呢&#xff1f;指的是设备在其电磁环境中性能不受降级地正常运行并不对其他设备造成无法承受的电…

坚持“大客户战略”,昂瑞微深耕全球射频市场

北京昂瑞微电子技术股份有限公司&#xff08;简称“昂瑞微”&#xff09;是一家聚焦射频与模拟芯片设计的高新技术企业。随着5G时代的全面到来&#xff0c;智能手机、智能汽车等终端设备对射频前端器件在通信频率、多频段支持、信道带宽及载波聚合等方面提出了更高需求&#xf…

AI赋能职教革新:生成式人工智能(GAI)认证重构技能人才培养新范式

在数字化浪潮的推动下&#xff0c;职业教育正经历着前所未有的变革。面对快速变化的市场需求和技术发展&#xff0c;如何培养具备高技能、高素质的人才成为了职业教育的重要课题。而在这个过程中&#xff0c;人工智能&#xff08;AI&#xff09;技术的融入&#xff0c;无疑为职…