作者dont (dont)
看板Marginalman
標題Re: [閒聊] 每日leetcode
時間Tue Sep 10 11:19:29 2024
2807. Insert Greatest Common Divisors in Linked List
## 思路
照著做 中間塞gcd
## Code
```python
class Solution:
def insertGreatestCommonDivisors(self, head: Optional[ListNode]) ->
Optional[ListNode]:
def get_gcd(x, y):
while y:
x, y = y, x % y
return x
curr = head
while curr and curr.next:
gcd = get_gcd(curr.val, curr.next.val)
curr.next = node = ListNode(gcd, curr.next)
curr = node.next
return head
```
817. Linked List Components
## 思路
先把nums轉成set再掃LinkedList
如果node在nums裡就res+1並且跳過相連且在nums裡的node
## Code
```python
class Solution:
def numComponents(self, head: Optional[ListNode], nums: List[int]) -> int:
nums = set(nums)
res = 0
while head:
if head.val in nums:
res += 1
while head and head.val in nums:
head = head.next
else:
head = head.next
return res
```
--
https://i.imgur.com/kyBhy6o.jpeg
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 185.213.82.8 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1725938371.A.31C.html
推 sustainer123: 大師 09/10 11:21