当前位置: 首页 > news >正文

二分查找习题

一、二叉搜索树与双向链表(剑指 Offer JZ36 )
 


解题思路要点
 
- 利用中序遍历特性:二叉搜索树的中序遍历结果是有序序列,这是将二叉搜索树转化为有序双向链表的关键。通过中序遍历可以按从小到大的顺序访问节点,满足双向链表有序的要求。
 
- 指针调整策略:在中序遍历过程中,维护一个前驱节点指针。每当访问到一个新节点时,将新节点的左指针指向之前访问的节点(即前驱节点 ),同时将前驱节点的右指针指向当前节点,逐步构建双向链表的连接关系。
 
- 头节点确定:在遍历过程中,要记录下

/*
struct TreeNode {int val;struct TreeNode *left;struct TreeNode *right;TreeNode(int x) :val(x), left(NULL), right(NULL) {}
};*/
class Solution {
public:void Inorder(TreeNode* cur,TreeNode* &prev){if(cur==nullptr){return;}Inorder(cur->left,prev);cur->left=prev;if(prev){prev->right=cur;}prev=cur;Inorder(cur->right,prev);}TreeNode* Convert(TreeNode* pRootOfTree) {TreeNode* prev=nullptr;Inorder(pRootOfTree,prev);TreeNode*head=pRootOfTree;while(head&&head->left){head=head->left;}return head;}
};

二、根据二叉树创建字符串(LeetCode 606 )
 


解题思路要点
 
- 遍历顺序:明确采用前序遍历方式,先访问根节点,再访问左子树,最后访问右子树。这是因为题目要求按特定顺序将二叉树转化为字符串,前序遍历能满足从根开始构建的需求。
 
- 空节点处理:对于空节点,用“()”表示。当左子树为空但右子树存在时,左子树对应的“()”不能省略,否则会破坏二叉树与字符串的一一映射关系;若左子树存在,无论右子树是否为空,都按规则添加括号包裹子树转换后的字符串。
 
- 字符串构建:从根节点开始,依次将节点值和对应子树的字符串按顺序拼接起来。每处理完一个节点及其子树,就得到一部分字符串,最终组合成完整的表示二叉树的字符串。
 

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:string tree2str(TreeNode* root) {if(root==nullptr)return"";string str=to_string(root->val);;if(root->left||root->right){str+='(';str+=tree2str(root->left);str+=')';}if(root->right){str+='(';str+=tree2str(root->right);str+=')';}return str;}
};

三、二叉树的最近公共祖先(LeetCode 236 )
 


解题思路要点
 
- 递归回溯基础:利用递归从根节点向下探索二叉树。递归的终止条件是遇到空节点或者找到目标节点  p  或  q  。
 
- 节点判断逻辑:在递归过程中,对每个节点进行判断。如果当前节点就是  p  或  q  ,它有可能是最近公共祖先。当从左右子树递归返回后,若左右子树都找到了目标节点(即左右子树返回值都不为空 ),说明当前节点是最近公共祖先;若只有左子树找到目标节点,就返回左子树的结果;若只有右子树找到,就返回右子树的结果;若左右子树都没找到,返回空指针。
 
- 深度优先搜索:本质上是深度优先搜索的过程,通过不断深入子树,在回溯过程中确定最近公共祖先,保证找到的祖先节点深度尽可能大。
 

方法一

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/
class Solution {
public:bool Find(TreeNode* tree,TreeNode* x){if(tree==nullptr){return false;}return tree==x||Find(tree->left,x)||Find(tree->right,x);}TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) {if(root==NULL){return NULL;}if(root==p||root==q)return root;bool pinleft,pinright,qinleft,qinright;pinleft=Find(root->left,p);pinright=! pinleft;qinleft=Find(root->left,q);qinright=! qinleft;if(pinleft&&qinleft)return lowestCommonAncestor( root->left, p,  q);else if(pinright&&qinright)return lowestCommonAncestor( root->right, p,  q);else return root;}
};

方法二

class Solution {
public:bool FindPath(TreeNode*root,TreeNode*p,stack<TreeNode*>& Path){if(root==nullptr)return false;Path.push(root);if(root==p)return true;if(FindPath(root->left,p,Path))return true;if(FindPath(root->right,p,Path))return true;Path.pop();return false;}TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) {stack<TreeNode*>pPath,qPath;FindPath(root,p,pPath);FindPath(root,q,qPath);while(pPath.size()>qPath.size())pPath.pop();while(pPath.size()<qPath.size())qPath.pop();while(pPath.top()!=qPath.top()){pPath.pop();qPath.pop();}return pPath.top();}};

相关文章:

二分查找习题

一、二叉搜索树与双向链表&#xff08;剑指 Offer JZ36 &#xff09; 解题思路要点 - 利用中序遍历特性&#xff1a;二叉搜索树的中序遍历结果是有序序列&#xff0c;这是将二叉搜索树转化为有序双向链表的关键。通过中序遍历可以按从小到大的顺序访问节点&#xff0c;满足…...

JumpServer批量添加资产

环境说明&#xff1a;我的环境是H3C网络设备环境 一、在linux系统环境下通过Python脚本获取交换机信息&#xff0c;IP地址和设备名称一一对应&#xff0c;脚本如下&#xff1a; cat get_device-sysname.py import re from netmiko import ConnectHandler from concurrent.fut…...

使用 Python 与 Java 实现接入 AI 大模型的 MCP 协议:原理与实战

一、什么是 MCP 协议&#xff1f; MCP&#xff08;Model Context Protocol&#xff09; 是一种专为远程控制和管理 AI 大模型而设计的通信协议。它允许客户端通过网络向服务器发送请求&#xff0c;以执行诸如模型推理、状态查询、参数更新等操作&#xff0c;并接收相应的结果。…...

Nginx核心原理以及案例分析(AI)

一、Nginx核心原理分析 1. ‌事件驱动与非阻塞模型‌ ‌Epoll异步机制‌&#xff1a;基于Linux的epoll模型实现异步非阻塞I/O处理&#xff0c;单线程可高效管理数万并发连接&#xff0c;避免传统select模型的轮询性能瓶颈。‌多进程架构‌&#xff1a;采用Master-Worker模式&…...

ChromeDriverManager的具体用法

ChromeDriverManager 是 webdriver_manager 库的一部分&#xff0c;它用于自动管理 ChromeDriver 的下载和更新。使用 ChromeDriverManager 可以避免手动下载 ChromeDriver 并匹配系统中安装的 Chrome 浏览器版本。以下是 ChromeDriverManager 的基本用法&#xff1a; 步骤 1…...

Linux:认识基础IO

1.理解"⽂件" 1.1狭义理解 ⽂件在磁盘⾥ 磁盘是永久性存储介质&#xff0c;因此⽂件在磁盘上的存储是永久性的 磁盘是外设&#xff08;即是输出设备也是输⼊设备&#xff09; 磁盘上的⽂件 本质是对⽂件的所有操作&#xff0c;都是对外设的输⼊和输出 简称 IO 1.2广…...

SimpleMindMap:一个支持AI的思维导图软件

SimpleMindMap&#xff08;思绪思维导图&#xff09;是一款开源、跨平台且功能丰富的思维导图工具&#xff0c;支持 Web 端及多平台客户端&#xff08;Windows、macOS、Linux&#xff09;。 SimpleMindMap 提供的主要功能如下&#xff1a; 插件化设计&#xff0c;除了核心功能…...

数据库故障排查指南:MySQL 解决常见问题解决

数据库是现代 IT 系统的核心引擎,承载着企业最重要的数据资产。数据库的稳定、高效运行直接关系到业务的生死存亡。然而,由于软硬件、配置、应用访问等多种因素的影响,数据库故障难以完全避免。当故障发生时,能够迅速定位、分析并解决问题,同时确保数据安全不受影响,是每…...

2025年特种作业操作证考试题库及答案(登高架设作业)

一、单选题 202.带电跨越架羊角撑杆高度&#xff08;  &#xff09;m。 A.1 B.1.1 C.1.2 答案:B 203.跨越架拉线地锚埋深必须按&#xff08;  &#xff09;及架体设计要求进行。 A.现场情况决定 B.土质情况 C.地锚设计分坑图 答案:C 204.单排脚手架洞口处&#…...

Open CASCADE学习|ApplicationFramework 框架使用指南

在现代 CAD&#xff08;计算机辅助设计&#xff09;应用开发中&#xff0c;构建一个高效、可扩展且用户友好的应用程序框架是至关重要的。Open CASCADE&#xff08;简称 OCC&#xff09;提供了一个功能强大的 ApplicationFramework&#xff08;应用程序框架&#xff09;&#x…...

hadoop中的序列化和反序列化(3)

3. Java的序列化 Java提供了内置的序列化机制&#xff0c;通过java.io.Serializable接口实现。 3.1 如何实现Java序列化 让类实现Serializable接口。 使用ObjectOutputStream进行序列化。 使用ObjectInputStream进行反序列化。 示例代码 序列化 java 复制 import jav…...

PostgreSQL给新用户授权select角色

✅ 切换到你的数据库并以超级用户登录&#xff08;例如 postgres&#xff09;&#xff1a; admin#localhost: ~$ psql -U postgres -d lily✅ 创建登录的账号机密吗 lily> CREATE USER readonly_user WITH PASSWORD xxxxxxxxxxx; ✅ 确认你授予了这个表的读取权限&#xf…...

MySQL 8.0 OCP(1Z0-908)英文题库(1-10)

目录 第1题题目解析正确答案 第2题题目解析正确答案 第3题题目解析正确答案 第4题题目解析正确答案 第5题题目解析正确答案 第6题题目解析正确答案 第7题题目解析正确答案 第8题题目解析正确答案 第9题题目解析正确答案 第10题题目解析正确答案&#xff1a; 第1题 Your MySQL …...

南京市出台工作方案深化“智改数转网联”,物联网集成商从“困局”到“蓝海”!

为落实《江苏省深化制造业智能化改造数字化转型网络化联接三年行动计划&#xff08;2025-2027年&#xff09;》&#xff0c;南京市近日出台“工作方案”&#xff0c;部署五大行动17项重点任务&#xff0c;进一步深化全市制造业智能化改造、数字化转型、网络化联接&#xff08;以…...

系统思考:教育焦虑恶性循环分析

今天和团队的小伙伴一起拆解了一个父母教育焦虑与报班行为之间的系统环路图&#xff0c;报班越多 ➡ 孩子自由时间越少 ➡ 情绪调节力下降 ➡ 学习效率更低 ➡ 成绩不理想 ➡ 家长更焦虑 ➡ 继续加码报班…… 一圈一圈&#xff0c;像是陷入了“焦虑的恶性循环”。 这也是我一直…...

(已完结)完美解决C盘拓展卷是灰色的无法扩容的问题以及如何正确地在WINDOS上从一个盘扩容到C盘

众所周知&#xff0c;window系统在“计算机”管理中自带了一个磁盘管理系统 但是在使用过程中会出现各种各样无法扩容的毛病。 第一&#xff1a;首先排查&#xff0c;大多数人在扩容之前忽视了一点就是&#xff0c;我们现代的很多新机器都是默认开启BitLocker加密的&#xff…...

优选算法系列(8.多源BFS)

简介&#xff1a; 01 矩阵&#xff08;medium&#xff09;&#xff1a; 题目链接&#xff1a;542. 01 矩阵 - 力扣&#xff08;LeetCode&#xff09; 算法&#xff1a; 对于求的最终结果&#xff0c;我们有两种方式&#xff1a; 第⼀种方式&#xff1a;从每⼀个 1 开始&#…...

迈向AI辅助数据分析代码生成的透明性与知识共享

李升伟 摘译 生成式人工智能&#xff08;AI&#xff09;及尤其大型语言模型&#xff08;LLMs&#xff09;正在改变我们进行数据科学研究的方式. 最显著的例子包括科学家使用该技术与科学数据交互, 回答数据分析问题, 生成数据分析代码以及(重新)撰写科研手稿. 然而遗憾的是&am…...

autojs和冰狐智能辅助该怎么选择?

最近打算做自动化脚本&#xff0c;在autojs和冰狐智能辅助中做选择&#xff0c;不知道该怎么选。没办法只能花费大量时间仔细研究了autojs和冰狐智能辅助&#xff0c;综合考虑功能需求、开发复杂度、编程经验及项目规模等因素。以下是两者的核心对比及选择建议&#xff0c;仅供…...

小数的二进制表示

相信很多人都知道整数的二进制表示方法&#xff0c;但是小数的二进制就不一定了。 想来简单说一下整数的&#xff0c;就是不断的除以2取余数&#xff0c; 大致这样 从下往上取&#xff0c;这里42的结果就是101010 而且每个整数都有他对应的二进制数&#xff0c;但是小数转二…...

信息系统项目管理师-软考高级(软考高项)​​​​​​​​​​​2025最新(十)

个人笔记整理---仅供参考 第十章项目进度管理 10.1管理基础 10.2项目进度管理过程 10.3规划进度管理 10.4定义活动 选C 10.5排列活动顺序 10.6估算活动持续时间 10.7制订进度计划 制订进度计划4个步骤&#xff08;背&#xff0c;案例可能会考&#xff01;&#xff09; 10.8控制…...

Linux内核初始化机制全解析:从pure_initcall到late_initcall

引言 Linux内核的启动过程是一个高度有序的初始化流程,涉及数百个模块和子系统的协同工作。为了确保依赖关系正确、硬件资源按需分配,内核通过一系列初始化宏(如pure_initcall、subsys_initcall、late_initcall等)将函数划分为不同的优先级,按严格顺序执行。本文将深入探…...

pcie协议复位

pcie协议复位共有4中情况&#xff1b;cold reset&#xff1b;warm reset&#xff1b;hot reset&#xff1b;function level reset&#xff1b; 分类&#xff1a; 依据spec 6.6&#xff1a; Conventional reset&#xff08;传统复位&#xff09;&#xff1a;cold&#xff0c;…...

boost笔记: Cannot open include file: ‘boost/mpl/aux_/preprocessed/plain/.hpp‘

1. 问题描述 因为一下库定义了宏and&#xff0c;导致boost的文件包含and.hpp展开成&.hpp&#xff0c;所以出现以下错误 Cannot open include file: ‘boost/mpl/aux_/preprocessed/plain/&.hpp’ 2. 解决方案 在定义宏之前包含boost文件&#xff0c;但这种方案的缺点…...

Xilinx XCKU11P-2FFVA1156I 赛灵思 FPGA AMD Kintex UltraScale+

XCKU11P-2FFVA1156I 属于 AMD Kintex UltraScale™ FPGA 家族&#xff0c;采用 TSMC 20 nm FinFET 工艺&#xff0c;兼顾高性能与功耗效率&#xff0c;提供约 653 100 个逻辑单元、2 928 个 DSP 切片、21.1 Mb Block RAM 和 22.5 Mb UltraRAM&#xff0c;可广泛应用于网络加速、…...

hadoop中的序列化和反序列化(4)

4. Hadoop的序列化 Hadoop提供了自己的序列化机制&#xff0c;用于高效地处理分布式计算中的数据传输。Hadoop的序列化机制比Java的序列化更高效&#xff0c;更适合大规模数据处理。 4.1 Hadoop序列化的特点 高效&#xff1a;Hadoop的序列化格式紧凑&#xff0c;适合大规模数…...

实现引用计数线程安全的shared_ptr

c11引入了三个智能指针&#xff0c;用来自动管理内存&#xff0c;使用智能指针可以有效地减少内存泄漏。 其中&#xff0c;shared_ptr是共享智能指针&#xff0c;可以被多次拷贝&#xff0c;拷贝时其内部的引用计数1&#xff0c;被销毁时引用计数-1&#xff0c;如果引用计数为…...

今日行情明日机会——20250507

指数今天放量上涨&#xff0c;政策层面也释放出重大利好消息~ 上证缺口已补&#xff0c;大盘股表现总体较好 深证60分钟缺口依然未补&#xff0c;等待后续走势~ 2025年5月7日涨停股主要行业方向分析 一、核心主线方向 军工&#xff08;政策催化地缘驱动&#xff09; • 涨停…...

配置Hadoop集群-测试使用

&#xff08;一&#xff09;上传小文件 上传文件的时候&#xff0c;我们传一个大一点的&#xff08;>128M&#xff09;&#xff0c;再传一个小一点的。对于大一点的文件&#xff0c;我们要去看看它是否会按128M为单位去拆分这个大文件&#xff0c;而拆分成大文件之后&#…...

MEGA3:分子进化遗传学分析和序列比对集成软件

李升伟 摘译 摘要 在分子进化和群体遗传学的理论基础稳固确立后&#xff0c;比较DNA和蛋白质序列分析在重建物种和多基因家族的进化历史、估计分子进化速率以及推断塑造基因和基因组进化的性质和程度方面发挥了核心作用。随着高通量测序技术和新颖的统计及计算方法的发展&…...

21. LangChain金融领域:合同审查与风险预警自动化

引言&#xff1a;当AI成为24小时不眠的法律顾问 2025年某商业银行的智能合同系统&#xff0c;将百万级合同审查时间从平均3周缩短至9分钟&#xff0c;风险条款识别准确率达98.7%。本文将基于LangChain的金融法律框架&#xff0c;详解如何构建合规、精准、可追溯的智能风控体系…...

7D-AI系列:模型微调之mlx-lm

大模型的出现&#xff0c;导致信息量太大&#xff0c;只有静心动手操作&#xff0c;才能得到真理。 文章目录 环境要求安装示例mlx-lm微调工具参数准备数据集下载模型微调模型合并模型验证结果验证微调前的模型验证微调后的模型 环境要求 macbook pro m系列芯片mlx环境已安装 …...

数据可视化:php+echarts实现数据可视化(包含echart安装引入)

一、实现效果 实现动态时间,多列柱状图,单列柱状图,普通表格,表格动画等效果 二、实现 1、动态时间显示 通过php获取当前时间 设置计时器来动态显示时间秒数 <!-- 时间动画 --> <script>// 动态更新时间中的秒数function updateTime() {const now = new D…...

《Python星球日记》 第47天:聚类与KMeans

名人说&#xff1a;路漫漫其修远兮&#xff0c;吾将上下而求索。—— 屈原《离骚》 创作者&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 专栏&#xff1a;《Python星球日记》&#xff0c;限时特价订阅中ing 目录 一、聚类与…...

linux(centos)联网情况下部署

nginx部署 1.linux(centos)联网情况下部署 1.下载nginx所需依赖 # 安装开发工具组&#xff08;若未安装&#xff09; sudo yum groupinstall "Development Tools"# 安装 OpenSSL 开发包 sudo yum install openssl-devel# 安装 PCRE 开发包 sudo yum install pcre-…...

Kubernetes生产级资源管理实战:从QoS策略到OOM防御体系

一、资源限制的本质&#xff1a;不是成本控制&#xff0c;而是稳定性保障 当集群中某个节点的内存耗尽时&#xff0c;Kubernetes会像冷酷的交通警察一样&#xff0c;根据Pod的"优先级证件"&#xff08;QoS类别&#xff09;决定哪些Pod需要被驱逐。这种机制直接关系到…...

gcc的使用

gcc 是 GNU Compiler Collection&#xff08;GNU 编译器套件&#xff09;的缩写&#xff0c;是 GNU 项目开发的编程语言编译器集合&#xff0c;支持多种编程语言&#xff08;如 C、C、Objective-C、Fortran、Ada 等&#xff09;。以下是关于 gcc 的核心信息&#xff1a; 1. 主要…...

聊一聊Qwen3思考模式实现以及背后原理探讨

Qwen3思考模式切换实现 硬开关 我们先通过官方的示例代码来体验一下&#xff0c;如何实现在思考模式和非思考模式之间切换 通过tokenizer.apply_chat_template的enable_thinking参数来实现 默认情况下&#xff0c;Qwen3 启用了思考功能&#xff0c;类似于 QwQ-32B。这意味着…...

spark行动算子

在 Apache Spark 中&#xff0c;行动算子&#xff08;Action&#xff09;用于触发对 RDD 的实际计算&#xff0c;并将结果返回给驱动程序&#xff08;Driver&#xff09;或保存到外部存储系统中。与转换算子&#xff08;Transformation&#xff09;不同&#xff0c;行动算子会立…...

电商双十一美妆数据分析(代码)

import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns import jieba # 数据读取 df pd.read_csv(双十一_淘宝美妆数据.csv) # 数据清洗 # 处理重复值 data df.drop_duplicates(inplaceFalse) data data.reset_index(in…...

STM32裸机开发问题汇总

一、代码编写 1. keil中某个文件无法修改 keil中某个文件无法修改&#xff0c;不能输入_keil5 h文件无法修改-CSDN博客 2.编译报错declaration may not appear after executable statement in block STM32常见错误error: #268: declaration may not appear after executabl…...

C语言复习笔记--自定义类型

今天我们来复习一下自定义类型.自定义类型大概分为结构体,枚举,联合体,数组这几种.数组在之前就介绍过.今天我们来看下其他三种. 结构体 首先来看结构体. 结构体类型的声明 之前在操作符的地方简单认识过结构体.下面我们回顾一下. 结构体回顾 结构是⼀些值的集合&#xff0c;这…...

做 iOS 调试时,我尝试了 5 款抓包工具

日常做开发的人&#xff0c;特别是和客户端接口打交道的同学&#xff0c;应该对“抓包”这件事不陌生。 调试登录流程、分析接口格式、排查错误返回、分析网络性能、甚至研究第三方 App 的数据通信……说到底&#xff0c;都绕不开“抓 HTTPS 包”这一步。 而这一步&#xff0…...

html css js网页制作成品——HTML+CSS珠海网页设计网页设计(4页)附源码

目录 一、&#x1f468;‍&#x1f393;网站题目 二、✍️网站描述 三、&#x1f4da;网站介绍 四、&#x1f310;网站效果 五、&#x1fa93; 代码实现 &#x1f9f1;HTML 六、&#x1f947; 如何让学习不再盲目 七、&#x1f381;更多干货 一、&#x1f468;‍&#x1f…...

FID和IS的区别

&#x1f4ca; 生成模型评估&#xff1a;你选 IS 还是 FID&#xff1f; 在评估 GAN、Diffusion 等图像生成模型时&#xff0c;两个最常被提到的指标是&#xff1a; &#x1f539;IS (Inception Score) &#x1f539;FID (Frchet Inception Distance) &#x1f9e0; Inception…...

前端三大件--HTML

引言 在互联网的世界里&#xff0c;每一个绚丽多彩的网页背后&#xff0c;都离不开 HTML 的支撑。HTML&#xff08;Hyper Text Markup Language&#xff0c;超文本标记语言&#xff09;作为网页开发的基础语言&#xff0c;就像是搭建高楼大厦的砖块&#xff0c;是所有 Web 开发…...

Node.js 的 child_process 模块详解

Node.js 的 child_process 模块提供了创建子进程的能力,使 Node.js 应用能够执行系统命令、运行其他程序或脚本。这个模块非常强大,可以帮助我们实现很多复杂的功能。 1. exec - 执行 shell 命令 exec 方法用于执行 shell 命令,并缓冲任何产生的输出。 特点 创建 shell 来…...

日常知识点之随手问题整理(虚函数 虚函数表 继承的使用场景)

新来的同事提到一个虚函数解耦头文件的问题&#xff0c;就想起来对虚函数进行一些回顾。 他的问题是&#xff0c;通过纯虚函数&#xff0c;如何实现不包含头文件即可真正调用到子类的实际接口。 》这里肯定是不合理的&#xff0c;需要一个中间管理类&#xff0c;对纯虚函数和相…...

【软件设计师:数据结构】2.数据结构基础(二)

一、树 树是n(n≥0)个结点的有限集合,n=0时称为空树,在任一非空树中 ● 有且仅有一个称为根的结点。 ● 其余的结点可分为m(m≥0)个互不相交的子集T1,T2…,Tm,其中每个子集本身又是一棵树,并称其为根结点的子树。 1、树的基本概念 ● 双亲和孩子 ● 兄弟:具有相同双…...

Python训练营打卡——DAY18(2025.5.7)

目录 一、基于聚类进一步推断类型 1. 聚类分析 2. 簇的总结与定义 二、作业 1. 聚类分析 2. 簇的总结与定义 3. 模型效果提升 一、基于聚类进一步推断类型 选用昨天kmeans得到的效果进行聚类&#xff0c;进而推断出每个簇的实际含义。 1. 聚类分析 # 先运行之前预处理…...