9月1日刷题:1-4
给定一个整数数组 nums 和一个目标值 target请你在该数组中找出和为目标值的那 两个 整数并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是你不能重复利用这个数组中同样的元素。示例:给定 nums [2, 7, 11, 15], target 9。因为 nums[0] nums[1] 2 7 9。所以返回 [0, 1]class Solution(object): def twoSum(self, nums, target): :type nums: List[int] :type target: int :rtype: List[int] dict1 {} # 定义一个字典用来存储nums中遍历过的元素 for i in range(len(nums)): num target - nums[i] if num not in dict1: dict1[nums[i]] i else: return [dict1[num], i]2. 给出两个 非空 的链表用来表示两个非负的整数。其中它们各自的位数是按照 逆序 的方式存储的并且它们的每个节点只能存储 一位 数字。如果我们将这两个数相加起来则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外这两个数都不会以 0 开头。示例输入(2 - 4 - 3) (5 - 6 - 4)输出7 - 0 - 8原因342 465 807# Definition for singly-linked list. class ListNode(object): def __init__(self, x): self.val x self.next None def print_node(self): print(self.val) class Solution(object): def addTwoNumbers(self, l1, l2): :type l1: ListNode :type l2: ListNode :rtype: ListNode # 新建一个ListNode值都是0 head ret ListNode(0) # 当l1 和 l2不为空时或不等于0 while l1 and l2: # ret的指针指向l1与l2的和值 ret.next ListNode(l1.val l2.val) # l1指向下一个值 l1 l1.next # l2指向下一个值 l2 l2.next # ret还是0.节点指向下一个节点 ret ret.next # 当l2位数小于l1时 while l1: ret.next ListNode(l1.val) l1 l1.next ret ret.next # 当l1位数小于l2时 while l2: ret.next ListNode(l2.val) l2 l2.next ret ret.next # 处理进位 ret head head.next while head: if head.val 9: if head.next None: # 判断下一个位置是否有数字 head.next ListNode(0) head.next.val int(head.val / 10) # 进位 head.val % 10 # 当前位置的数 head head.next print(ret) return ret # 返回第一个位置的数 if __name__ __main__: l1 ListNode(2) l1.next ListNode(4) l1.next.next ListNode(3) # l1.print_node() l2 ListNode(5) l2.next ListNode(6) l2.next.next ListNode(4) # l2.print_node() solution Solution() l3 solution.addTwoNumbers(l1, l2) l3.print_node() l3.next.print_node() l3.next.next.print_node()3. 无重复字符的最长子串给定一个字符串请你找出其中不含有重复字符的最长子串的长度。示例 1:输入: abcabcbb输出: 3解释: 因为无重复字符的最长子串是 abc所以其长度为 3。示例 2:输入: bbbbb输出: 1解释: 因为无重复字符的最长子串是 b所以其长度为 1。示例 3:输入: pwwkew输出: 3解释: 因为无重复字符的最长子串是 wke所以其长度为 3。请注意你的答案必须是 子串 的长度pwke 是一个子序列不是子串。这道题主要用到思路是滑动窗口 什么是滑动窗口其实就是一个队列,比如例题中的 abcabcbb进入这个队列窗口为 abc 满足题目要求当再进入 a队列 变成了 abca这时候不满足要求。所以我们要移动这个队列 如何移动我们只要把队列的左边的元素移出就行了直到满足题目要求一直维持这样的队列找出队列出现最长的长度时候 求出解 时间复杂度O(n)class Solution(object): def lengthOfLongestSubstring(self, s): :type s: str :rtype: int res maxlen 0 for ch in s: if ch not in res: res ch else: maxlen max(maxlen, len(res)) index res.index(ch) res res[index 1:] ch return max(maxlen, len(res)) if __name__ __main__: solution Solution() # print(solution.lengthOfLongestSubstring(abdcagt)) print(solution.lengthOfLongestSubstring(abcabcbb)) print(solution.lengthOfLongestSubstring(bbbb)) print(solution.lengthOfLongestSubstring(pwwkew))关于以下代码执行成功提交报错的分析class Solution(object): def findMedianSortedArrays(self, nums1, nums2): :type nums1: List[int] :type nums2: List[int] :rtype: float nums sorted(nums1nums2) if len(nums)%2 0: answer (nums[int(len(nums)/2-1)]nums[int(len(nums)/2)])/2 else: answer nums[int((len(nums)1)/2)-1] return answer解析这是Python版本的问题。Python2.x和python3.x的语法差异造成的。在Python3.0中变成真除法无论任何类型都会保持小数部分即使整除也会表示为浮点数形式。 3/21.5 3/2.01.5 4/22.0 4/2.02.0

相关新闻

基于地理位置算法GeoHash核心原理解析

基于地理位置算法GeoHash核心原理解析

文章目录认知GeoHash算法步骤根据经纬度计算GeoHash二进制编码组码GeoHash Base32编码长度与精度具体应用使用注意点认知GeoHash GeoHash将二维的经纬度转换成字符串,如北京9个区域的GeoHash字符串,分别是WX4ER,WX4G2、WX4G3等等,每一个字符…

2026/11/4 22:34:22 阅读更多 →
Eureka-Server的搭建

Eureka-Server的搭建

1.pom.xml<?xml version"1.0" encoding"UTF-8"?><project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0.0 …

2026/10/28 9:54:52 阅读更多 →
Path of Building PoE2:流放之路2角色构建规划的完整解决方案

Path of Building PoE2:流放之路2角色构建规划的完整解决方案

Path of Building PoE2&#xff1a;流放之路2角色构建规划的完整解决方案 【免费下载链接】PathOfBuilding-PoE2 项目地址: https://gitcode.com/GitHub_Trending/pa/PathOfBuilding-PoE2 还在为《流放之路2》复杂的天赋系统和装备搭配感到困惑吗&#xff1f;Path of B…

2026/11/1 17:45:02 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年&#xff0c;我大部分时间都在跟浏览器标签页打交道&#xff0c;直到第一次把桌面应用跑起来&#xff0c;才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词&#xff0c;最开始是在某段时间频繁出现在同事的讨论里&#xff0c;一个用HTML…

2026/11/4 1:35:24 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介&#xff1a;亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档&#xff0c;主要面向智能锁安装人员、终端用户及售后维护者&#xff0c;帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件&#xff0c;大小4.37MB&#xff0c;内容结构清晰&#xff…

2026/11/3 10:57:27 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统&#xff0c;整车要求空载跑到8m/s&#xff0c;电机转速已经拉到额定点&#xff0c;驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令&#xff0c;转速纹丝不动&#xff0c;三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/3 11:35:49 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年&#xff0c;用它写过嵌入式驱动、做过游戏服务端&#xff0c;也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词&#xff0c;我其实挺感慨的——这门语言的难点从来不是语法多&#xff0c;而是知识点之间的耦合太深…

2026/11/4 6:23:50 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介&#xff1a;亚太天能T109滑盖智能锁产品说明书以PDF格式发布&#xff0c;适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开&#xff0c;先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能&#xff0c;再给出完整安装步骤&…

2026/11/3 10:47:27 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历&#xff1a;翻开源码注释、论文摘要或者一份专业报告&#xff0c;每个字都认识&#xff0c;连在一起却像天书。想找人聊聊&#xff0c;身边要么没人懂&#xff0c;要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型&#xff0c;几秒钟之后&a…

2026/11/4 19:19:54 阅读更多 →

日新闻

周新闻

月新闻