缺失数字
给定一个包含 0, 1, 2, …, n 中 n 个数的序列,找出 0 … n 中没有出现在序列中的那个数
def missingNumber(self, nums: List[int]) -> int:
p=int((len(nums)+1)*len(nums)/2)
t=0
for i in nums:
t+=i
return p-t
两数之和
‘’‘不使用运算符 + 和 - ?6?7?6?7?6?7?6?7?6?7?6?7?6?7,计算两整数 ?6?7?6?7?6?7?6?7?6?7?6?7?6?7a 、b ?6?7?6?7?6?7?6?7?6?7?6?7?6?7之和。’’’
class Solution:
def getSum(self, a: int, b: int) -> int:
res=[]
res.append(a)
res.append(b)
return sum(res)
两个数组交集
“”“给定两个数组,编写一个函数来计算它们的交集。”""
class Solution:
def intersect(self, nums1: List[int], nums2: List[int]) -> List[int]:
res=[]
for i in nums1:
if i in nums2:
res.append(i)
nums2.remove(i)
return res
环形链表
‘’'给定一个链表,判断链表中是否有环。
为了表示给定链表中的环,使用整数 pos来表示链表尾连接到链表中的位置(索引从 0 开始)。
如果 pos 是 -1,则在该链表中没有环。
‘’’
class Solution(object):
def hasCycle(self, head):
"""
:type head: ListNode
:rtype: bool
"""
p1=p2=head
while p2!=None and p2.next!=None:
p1=p1.next
p2=p2.next.next
if p2==p1:
return True
return False
有效的字母异位词
‘’‘给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。’’’
class Solution:
def isAnagram(self, s: str, t: str) -> bool:
if s==t:
return True
if len(s)!=len(t):
return False
for i in set(s):
if t.count(i)!=s.count(i):
return False
return True
本文探讨了两种算法问题:一是找出序列中缺失的数字,通过计算序列总和与理想总和的差值来找到答案;二是不使用加减运算符计算两数之和,可以通过位操作实现。同时,还介绍了求两个数组交集的方法,链表环检测以及判断字母异位词的有效性。这些算法在数据结构和算法领域具有重要意义。
786

被折叠的 条评论
为什么被折叠?



