力扣785. 判断二分图
力扣785. 判断二分图
题目

题目解析及思路
题目要求将所有节点分成两部分,每条边的两个端点都必须在不同集合中
二分图:BFS/DFS/并查集
因为图不一定联通,所以枚举所有点都做bfs(如果没联通的话)
代码
class Solution {
public:bool isBipartite(vector<vector<int>>& graph) {int n = graph.size();vector<int> st(n,0);for(int i=0;i<n;i++){if(st[i] == 0){queue<int> q;q.push(i);//先染成1st[i] = 1;while(q.size()){int t = q.front();//equal为和t的颜色不一样的那个颜色int equal = (st[t] == 1 ? 2 : 1);q.pop();for(int v : graph[t]){//没被染色if(st[v] == 0){q.push(v);st[v] = equal;}//染过色而且是相同颜色else if(st[v] != equal){return false;}}}}}return true;}
};
相关文章:
力扣785. 判断二分图
力扣785. 判断二分图 题目 题目解析及思路 题目要求将所有节点分成两部分,每条边的两个端点都必须在不同集合中 二分图:BFS/DFS/并查集 因为图不一定联通,所以枚举所有点都做bfs(如果没联通的话) 代码 class Solution { public:bool is…...
【硬件工程师成长】之是否需要组合电容进行滤波的考虑
在电子电路设计中,判断是否需要使用组合电容进行滤波,需综合考虑以下因素: 1. 噪声频谱分析 高频与低频噪声共存:若电源或信号中同时存在低频(如工频纹波)和高频噪声(如开关电源的开关噪声、数字…...
Pythonweb开发框架—Flask工程创建和@app.route使用详解
1.创建工程 如果pycharm是专业版,直接NewProject—>Flask 填写工程name和location后,点击右下角【create】,就会新建一个flask工程,工程里默认会建好一个templates文件夹、static文件夹、一个app.py文件 templates࿱…...
005 公网访问 docker rocketmq
文章目录 创建自定义网络创建NameServer容器创建Broker容器正式开始启动 Nameserver 容器启动 Broker 容器并关联 Nameserverdocker exec -it rmqbroker vi /etc/rocketmq/broker.conf检查 namesrv 解析检查 Broker 注册状态Nameserver 日志Broker 日志检查容器日志手动指定 Br…...
C++11中的右值引用和完美转发
C11中的右值引用和完美转发 右值引用 右值引用是 C11 引入的一种新的引用类型,用 && 表示。它主要用于区分左值和右值,并且可以实现移动语义,避免不必要的深拷贝,提高程序的性能。左值通常是可以取地址的表达式…...
txt 转 json 使用python语言
需求: 把如下的txt文档转成json输出 代码 import jsondef txt_to_json(input_file, output_file):data_list []with open(input_file, r, encodingutf-8) as f:for line in f:# 分割数据并去除换行符parts line.strip().split(,)print(f"{parts}")print(type(par…...
Android Logcat 高效调试指南
工具概览 Logcat 是 Android SDK 提供的命令行日志工具,支持灵活过滤、格式定制和实时监控,官方文档详见 Android Developer。 基础用法 命令格式 [adb] logcat [<option>] ... [<filter-spec>] ... 执行方式 直接调用(通过ADB守…...
【Linux】从入门到精通:Make与Makefile完全指南
欢迎来到 CILMY23 的博客 🏆本篇主题为:从入门到精通:Make与Makefile完全指南 🏆个人主页:CILMY23-CSDN博客 🏆系列专栏:C | C语言 | Linux | Python | 数据结构和算法 | 算法专题 …...
leetcode0014 最长公共前缀 -easy
1 题目:最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 “”。 示例 1: 输入:strs [“flower”,“flow”,“flight”] 输出:“fl” 示例 2: 输入&a…...
【星云 Orbit-F4 开发板】07. 用判断数据尾来接收据的串口通用程序框架
【星云 Orbit-F4 开发板】用判断数据尾来接收一串数据的串口通用程序框架 摘要 本文介绍了一种基于STM32F407微控制器的串口数据接收通用程序框架。该框架通过判断数据尾来实现一串数据的完整接收,适用于需要可靠数据传输的应用场景。本文从零开始,详细…...
LLVM - 编译器前端 - 将源文件转换为抽象语法树(一)
一:概述 编译器通常分为两部分——前端和后端。在本文中,我们将实现编程语言的前端部分——即主要处理源语言的部分。我们将学习现实世界编译器使用的技术,并将其应用到我们的编程语言中。 本文将从定义编程语言的语法开始,最终生成一个抽象语法树(AST),这是代码生成的基…...
02_NLP文本预处理之文本张量表示法
文本张量表示法 概念 将文本使用张量进行表示,一般将词汇表示为向量,称为词向量,再由各个词向量按顺序组成矩阵形成文本表示 例如: ["人生", "该", "如何", "起头"]># 每个词对应矩阵中的一个向量 [[1.32, 4,32, 0,32, 5.2],[3…...
深圳SMT贴片加工核心工艺解析
内容概要 深圳作为全球电子制造产业的核心集聚区,其SMT贴片加工技术始终引领行业创新方向。本文聚焦深圳电子制造企业在高密度、微型化组件加工中的核心工艺体系,系统解析从锡膏印刷到成品检测的全流程关键技术。通过梳理SMT产线中设备参数设定、工艺条…...
P8720 [蓝桥杯 2020 省 B2] 平面切分--set、pair
P8720 [蓝桥杯 2020 省 B2] 平面切分--set、pair 题目 分析一、pair1.1pair与vector的区别1.2 两者使用场景两者组合使用 二、set2.1核心特点2.2set的基本操作2.3 set vs unordered_set示例:统计唯一单词数代码 题目 分析 大佬写的很明白,看这儿 我讲讲…...
突破传统:用Polars解锁ICU医疗数据分析新范式
一、ICU数据革命的临界点 在重症监护室(ICU),每秒都在产生关乎生死的关键数据:从持续监测的生命体征到高频更新的实验室指标,从呼吸机参数到血管活性药物剂量,现代ICU每天产生的数据量级已突破TB级别。传统…...
命名实体识别与文本生成算法
在自然语言处理(NLP)的浩瀚星空中,命名实体识别(Named Entity Recognition, NER)与文本生成算法如同两颗璀璨的星辰,各自闪耀,又相互辉映,共同推动着人工智能技术在语言理解与生成领…...
10.3 指针进阶_代码分析
代码分析 9. 指针和数组代码解析一维数组字符数组字符串二维数组 10. 指针代码分析eg1eg2eg3eg4eg5eg6eg7eg8 10.1 指针进阶_数组指针 10.2 指针进阶_函数指针 9. 指针和数组代码解析 数组名arr是首元素地址 例外: 1. sizeof(arr),计算整个数组的大小&…...
深入理解推理语言模型(RLM)
大语言模型从通用走向推理,万字长文解析推理语言模型,建议收藏后食用。 本文基于苏黎世联邦理工学院的论文《Reasoning Language Models: A Blueprint》进行整理,你将会了解到: 1、RLM的演进与基础:RLM融合LLM的知识广…...
在Nginx上配置并开启WebDAV服务的完整指南
在Nginx上配置并开启WebDAV服务的完整指南 如何在 Nginx 上开启 WebDAV 服务 要在 Nginx 上开启 WebDAV 服务,你需要配置 Nginx 以支持 WebDAV 请求。以下是详细的步骤: 1. 确保 Nginx 安装了 WebDAV 模块 Nginx 的 WebDAV 功能由 http_dav_module 模…...
大语言模型学习
大语言模型发展历程 当前国内外主流LLM模型 一、国外主流LLM LLaMA2 Meta推出的开源模型,参数规模涵盖70亿至700亿,支持代码生成和多领域任务适配57。衍生版本包括Code Llama(代码生成优化)和Llama Chat(对…...
突破空间极限,重塑工业通信边界:来可电子 MPCIeCAN 系列深度解析
在工业 4.0 和边缘计算蓬勃发展的今天,工控机(IPC)、单板电脑和移动机器人(如 AGV/AMR)正朝着更加极致的小型化、高集成度方向演进。然而,无论设备多么精巧,稳定可靠的 CAN 总线通信依然是其不可…...
OpenClaw对话式编程:千问3.5-27B生成Python脚本并自动执行
OpenClaw对话式编程:千问3.5-27B生成Python脚本并自动执行 1. 为什么选择OpenClaw做对话式编程? 去年冬天的一个深夜,我盯着屏幕上的Python脚本发呆——这个需要每小时抓取一次数据的自动化任务,已经因为API变更第三次报错了。手…...
RVC模型GitHub开源项目实战:从Fork到贡献代码
RVC模型GitHub开源项目实战:从Fork到贡献代码 想为热门的RVC(Retrieval-based Voice Conversion)项目贡献一份力量,却不知道从何下手?看着GitHub上那些活跃的Pull Request,是不是既羡慕又有点无从下手的感…...
【好靶场】越权获取信息
访问页面是一个个人信息页面我们看下雪瞳,可以看到的2个API接口直接抓包发现是可以进行水平越权直接进行intruder得到flag...
告别编译失败:Qt 6.6.0交叉编译到ARM平台最常见的5个错误及解决方法(基于gcc-linaro-14.0.0)
告别编译失败:Qt 6.6.0交叉编译到ARM平台最常见的5个错误及解决方法(基于gcc-linaro-14.0.0) 最近在将Qt 6.6.0交叉编译到i.MX6ULL开发板时,遇到了不少坑。作为一个经历过多次编译失败的老手,我整理了几个最容易导致编…...
Embedded Coder实战:5分钟搞定PID控制器的C代码生成(附完整配置流程)
Embedded Coder实战:5分钟搞定PID控制器的C代码生成(附完整配置流程) 在工业自动化领域,PID控制器就像一位不知疲倦的调节大师,默默维持着无数设备的稳定运行。想象一下,当你需要将这套经典算法部署到资源有…...
Windows下OpenClaw安装避坑:Qwen3.5-9B模型接入全记录
Windows下OpenClaw安装避坑:Qwen3.5-9B模型接入全记录 1. 为什么选择OpenClawQwen3.5-9B组合 去年12月我在整理年度技术文档时,被重复的文件归类操作折磨得苦不堪言。当时尝试过用Python脚本自动化处理,但面对动态变化的文件命名规则总是力…...
C++编程中堆与栈内存的差异解析
C编程中堆与栈内存的差异解析 在C编程的世界里,内存管理是一个核心且至关重要的概念。其中,堆(Heap)与栈(Stack)作为两种主要的内存分配区域,各自扮演着不同的角色,理解它们之间的区…...
双模型协作方案:OpenClaw同时接入Phi-3-vision-128k-instruct与Qwen的配置技巧
双模型协作方案:OpenClaw同时接入Phi-3-vision-128k-instruct与Qwen的配置技巧 1. 为什么需要双模型协作? 去年我在搭建个人自动化助手时,发现单一模型很难兼顾所有任务场景。当我尝试用纯文本模型处理截图中的表格数据时,识别准…...
基于COMSOL的复能带与凋落波研究:大、小单元嵌套声学黑洞结构PDE建模与文献复现
comsol实能带、复能带(PDE)建模 文献复现-“周期嵌套声学黑洞结构的复能带和凋落波研究”-“Complex band structure and evanescent Bloch wave propagation of periodic nested acoustic black hole phononic structure” 包括(大单元、小单元、嵌套单元ÿ…...
