下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
京东笔试编程题编程题1:两数之和题目描述:给定一个整数数组和一个目标值,找出数组中和为目标值的两个数,并返回它们的下标。假设每个输入只对应一个答案,且同样的元素不能被重复利用。解题思路:可以利用哈希表来存储每个元素的索引以及对应的值,然后遍历数组,对于每个元素,判断目标值与当前元素的差值是否在哈希表中,如果在,则返回对应的索引。如果不在,则将当前元素的索引和值存入哈希表中,继续遍历。实现代码如下:```pythondeftwo_sum(nums,target):hashmap={}fori,numinenumerate(nums):complement=target-numifcomplementinhashmap:return[hashmap[complement],i]hashmap[num]=ireturnNonenums=[2,7,11,15]target=9print(two_sum(nums,target))#Output:[0,1]```以上代码通过一次遍历即可找到符合条件的两个数的下标,并返回结果。编程题2:判断链表是否有环题目描述:给定一个链表,判断链表中是否有环。解题思路:可以使用快慢指针的方法来判断链表中是否有环。快指针每次移动两步,慢指针每次移动一步,如果链表中存在环,那么快指针一定会在某个时刻与慢指针相遇。如果快指针到达链表的末尾(即指针指向None),则链表中不存在环。实现代码如下:```pythonclassListNode:def__init__(self,x):self.val=xself.next=Nonedefhas_cycle(head):ifnotheadornothead.next:returnFalseslow=headfast=head.nextwhileslow!=fast:ifnotfastornotfast.next:returnFalseslow=slow.nextfast=fast.next.nextreturnTrue#构建一个有环的链表head=ListNode(3)head.next=ListNode(2)head.next.next=ListNode(0)head.next.next.next=ListNode(-4)head.next.next.next.next=head.nextprint(has_cycle(head))#Output:True```以上代码通过快慢指针
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 课堂教学反思记录计划
- 环保美术创作实践课程计划
- 学校学科竞赛活动安排计划
- 煤气销售代理委托合同三篇
- 2024年秋季学期新教科版八年级上册物理课件 第5章 物态变化 4 升华和凝华
- 股票认购与发行协议三篇
- 2024年秋季学期新华师大版七年级上册数学课件 第1章 有理数 1.9 有理数的乘法 2.有理数的乘法的运算律
- 2024年秋季学期新冀教版物理八年级上册课件 第三章 代数式 3.2.2 列代数式解决简单的实际问题
- 云计算数据中心安全维护服务合同
- 小学科学实验室消防安全管理策略探究
- 第二章 数值代数
- 辽宁省民办学校退费管理办法
- 历史学科分层教学工作总结
- CRH380B型动车组司机操作手册Word 文档
- 摩擦与润滑整理资料
- 操作流程——零售预包装食品流程图
- 全民运动体育健身主题动态PPT模板
- 循环系统疾病概论
- 浅议如何做好企业青年员工婚恋交友工作
- M1卡的存储结构
- 烽火OTN入门(从通信检修的角度切入)
评论
0/150
提交评论