- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.5.1数组奇偶分割
class Solution:
??2?
??? def sortArrayByParity(self, A):
??3?
???????
??4?
??????? :参数类型 A: List[int]
??5?
??????? :返回类型: List[int]
??6?
???????
??7?
??????? left = 0
??8?
??????? #len(A)可以获得列表(list)A的长度,而由于A是以0作为序列起始的,A的最后一个元素的序列是len(A)-1
??9?
??????? right = len(A)-1???
?10?
??????? #双指针法,一个指针从头开始,一个指针从尾开始
?11?
???????
?12?
??????? while right left:????????????????
?13?
#小技巧:通过位运算判断数值奇偶性,偶数的二进制表达式最后一位是0,而奇数的二进制表达式最后一位是1,因此与1做 运算可以得到该变量二进制表达式最后一位的值,从而对奇偶性进行判断
?14?
??????????? #先通过循环从前往后找到最靠前的奇数,在寻找的过程中保证右指针在左指针右边,且可以防止寻址越界
?15?
??????????? while right left and A[left] 1 == 0:???????
?16?
??????????????? left += 1
?17?
??????????? #再通过循环从后往前找到最靠前的偶数,在寻找的过程中保证右指针在左指针右边
?18?
??????????? while right left and A[right] 1 == 1:??????
?19?
??????????????? right -= 1
?20?
??????????? #小技巧:Python中调换两变量的值只需要利用一条分配变量的语句,注意最后一次循环时left == right
?21?
??????????? A[left], A[right] = A[right], A[left]??????????
?22?
??????? return A
2.5.2反转单向链表
??1?
# Definition for singly-linked list.
??2?
# class ListNode:
??3?
#???? def __init__(self, x):
??4?
#???????? self.val = x
??5?
#???????? self.next = None
??6?
?
??7?
# Iteration
??8?
# Iteration
??9?
class Solution:
?10?
??? # @param {ListNode} head??????? #这是一种很清晰的注释规范
?11?
??? # @return {ListNode}
?12?
??? def reverseList(self, head):
?13?
??????? #None 是一个特殊的常量,表示一个空对象
?14?
??????? prev = None????????????????
?15?
??????? #当没遍历到链表尾时,执行循环,Python中链表尾一般指向None,即链表尾指向空对象while None 会结束循环
?16?
??????? while head:????????????????
?17?
??????????? #用curr保存head指向的结点(旧链表的头节点)
?18?
??????????? curr = head????????????
?19?
??????????? #head指向head指向的下一个结点,相当于head原来所指向的结点从旧链表中脱离了
?20?
??????????? head = head.next???????
?21?
??????????? #然后curr保存的结点指向prev,即新链表的链表头,成为了新的链表头
?22?
??????????? curr.next = prev???????
?23?
??????????? #prev指向新链表的链表头
?24?
??????????? prev = curr????????????
?25?
??????? #循环结束后,此时prev成了新的头结点,返回新的头结点
?26?
??????? return prev???
??1?
# Recursion
??2?
class
您可能关注的文档
- 常用电气设备控制电路制作与调试题库.xlsx
- 《工程导论》教学大纲.doc
- 财经法规与会计职业道德(第五版)教案.doc
- 机电一体化设备组装与调试电子教案69088.doc
- 机械制图课程标准120 jlm.doc
- 婴幼儿营养与膳食管理试卷答案1.doc
- 婴幼儿营养与膳食管理试卷答案2.doc
- 婴幼儿营养与膳食管理试卷答案3.doc
- 婴幼儿营养与膳食管理试卷答案4.doc
- 婴幼儿营养与膳食管理试卷答案5.doc
- 2025年浙江省嵊州市事业单位考试(中小学教师类D类)职业能力倾向测验重点难点精练试题及答案一套.docx
- 2025年浙江省嵊州市事业单位公开招聘考试职业能力倾向测验(D类)(中小学教师类)真题最新.docx
- 2025年浙江省奉化市事业单位考试职业能力倾向测验(中小学教师类D类)强化训练题库含答案.docx
- 2025年浙江省嵊州市事业单位公开招聘考试职业能力倾向测验(D类)(中小学教师类)真题审定版.docx
- 2025年浙江省嵊州市事业单位考试(中小学教师类D类)职业能力倾向测验重点难点精练试题完美版.docx
- 2025年浙江省嵊州市事业单位考试(中小学教师类D类)职业能力倾向测验知识点试题推荐.docx
- 2025年浙江省嵊州市事业单位考试(中小学教师类D类)职业能力倾向测验知识点试题及答案一套.docx
- 2025年浙江省嵊州市事业单位公开招聘考试职业能力倾向测验(D类)(中小学教师类)真题学生专用.docx
- 2025年浙江省奉化市事业单位考试职业能力倾向测验(中小学教师类D类)强化训练题库一套.docx
- 2025年浙江省奉化市职业能力倾向测验事业单位考试(中小学教师类D类)试题完整版.docx
文档评论(0)