Day27力扣打卡

打卡记录

情侣牵手(并查集)

链接

cpp 复制代码
class Solution:
    def minSwapsCouples(self, row: List[int]) -> int:
        def find(x: int) -> int:
            if p[x] != x:
                p[x] = find(p[x])
            return p[x]

        n = len(row) >> 1
        p = list(range(n))
        for i in range(0, len(row), 2):
            a, b = row[i] >> 1, row[i + 1] >> 1
            p[find(a)] = find(b)
        return n - sum(i == find(i) for i in range(n))
相关推荐
独断万古他化2 分钟前
Python+Pytest 接口自动化测试实战 —— 抽奖系统接口测试框架设计与实现
python·pytest·接口自动化·测试·allure·yaml·json schema
沪漂阿龙3 分钟前
Python 面向对象编程完全指南:从新手到高手的进阶之路
开发语言·python·microsoft
chushiyunen7 分钟前
python中的异常处理
开发语言·python
Emberone7 分钟前
排序:万物皆有序
算法·排序算法
其实秋天的枫9 分钟前
2025年12月英语六级真题及答案解析完整版(第一、二、三套全PDF)
经验分享·算法
观书喜夜长10 分钟前
大模型应用开发学习-基于 LangChain 框架实现的交互式问答脚本
python·学习
章鱼丸-13 分钟前
DAY32 官方文档的阅读
python
2401_8747325315 分钟前
C++并发编程中的死锁避免
开发语言·c++·算法
2301_7923082517 分钟前
C++编译期数学计算
开发语言·c++·算法
hetao173383717 分钟前
2025-03-13~22 hetao1733837 的刷题记录
c++·算法