自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

永远怀着至诚之心拥抱世界

自身学习成长的切片和剪影

  • 博客(117)
  • 收藏
  • 关注

原创 NumPy 基础复习笔记(一)

NumPy核心为ndarray N维数组对象,存储同类型数据,元素内存大小一致、访问高效,包含数据指针、dtype、shape、stride四大核心组件,支持多维结构与反向切片。dtype定义数组数据类型,涵盖布尔、整型、浮点型等基础类型及结构化类型。数组属性含ndim(秩/维度数)、shape(形状)等,reshape操作共享数据缓冲区,仅调整数组解释形状。数组创建有三类方式:直接指定形状(empty/zeros/ones等)、复用已有数组形状(zeros_like/ones_like)

2025-11-30 00:15:00 535

原创 Python3 多线程

本文系统介绍了Python多线程编程的核心知识,包括线程基础概念、创建方式(函数式和类继承式)、线程管理(守护线程、同步方法)以及线程安全问题解决方案(Lock/Rlock锁和Queue队列)。重点分析了GIL锁的影响及适用场景选择,并总结了常见多线程编程的误区和优化策略。文章提供了清晰的代码模板和实用口诀,帮助开发者掌握线程创建、同步和管理的核心技巧,同时针对不同任务类型(IO密集型和CPU密集型)给出了合理的技术选型建议。

2025-11-30 00:00:00 789

原创 MySQL 数据导入

适配列顺序(数据文件列:a,b,c;

2025-11-29 00:00:00 610

原创 Python3 Socket 网络编程复习笔记

本文系统介绍了Python网络编程的核心知识,主要包括:1.基础概念:区分高低级别网络服务,解释套接字(Socket)定义及其在进程间通讯中的作用;2.核心API:详细说明socket()函数参数及服务器端/客户端专用方法,包括bind()、listen()、connect()等;3.实战案例:提供简单TCP通讯、带时间戳双向通讯、多线程聊天室三个层次的代码实现,涵盖单工/全双工/群聊私聊等场景;4.补充知识:列举常用网络协议及对应Python模块,总结TCP服务器/客户端标准开发流程。文中所有示例均附带完

2025-11-29 00:00:00 710 1

原创 Python3 发送邮件

Python邮件发送核心要点:使用smtplib和email模块实现SMTP邮件发送功能。smtplib负责服务器连接(SMTP_SSL端口465),email.mime处理邮件内容(MIMEText/MIMEMultipart)。支持纯文本、HTML、带附件(二进制读取)和嵌入图片(需Content-ID对应)邮件。关键注意事项:使用授权码而非密码登录,统一utf-8编码避免乱码,邮件头部用Header类处理中文。常见问题包括连接失败、认证错误和附件异常。优化建议包括配置抽离、异常捕获细化及支持多收件人/

2025-11-29 00:00:00 584

原创 MySQL SQL 注入

SQL注入是一种通过插入恶意SQL命令来攻击数据库的技术,其中MySQL注入专门针对MySQL数据库。攻击者利用未验证的用户输入构造恶意查询,如绕过登录验证或删除数据。防范措施包括使用参数化查询、输入验证、数据库权限限制及ORM框架。特殊场景如LIKE语句需额外处理通配符。Python中可用pymysql.escape_string()等函数防护,核心要点是永不信任用户输入并避免拼接SQL。建议定期审计代码并使用专业工具检测漏洞。

2025-11-28 00:00:00 661

原创 MySQL 数据导出

MySQL数据导出主要有两种方式:1. SELECT...INTO OUTFILE语句,用于将查询结果导出为服务器端文本文件,需具备FILE权限,可自定义字段和行分隔符;2. mysqldump命令行工具,可导出数据库结构及数据为SQL脚本,支持整库、单表导出及压缩文件。常见错误如secure-file-priv限制,需在配置文件中设置合法导出路径后重启服务解决。两种方式分别适用于不同场景的数据导出需求。

2025-11-28 00:00:00 655 1

原创 MySQL 处理重复数据

本文介绍了数据库表中重复数据的处理方案。在预防方面,可通过联合主键、唯一索引等约束方式,或使用INSERT IGNORE、REPLACE INTO等优化语句。统计重复数据可通过GROUP BY和HAVING子句实现。查询不重复数据可使用DISTINCT关键字或GROUP BY分组。删除重复数据提供两种方法:临时表法(创建临时表存储去重数据后替换原表)和索引/主键法(通过添加联合主键自动去重)。这些方法为数据库表的数据去重提供了全面的解决方案。

2025-11-27 07:00:00 221

原创 MySQL 序列(AUTO_INCREMENT)

MySQL通过AUTO_INCREMENT模拟自增序列,但一张表仅支持一个整数型自增主键列,且删除数据后自增值不回退。基础用法包括建表时指定自增列和插入时省略自增列值。可通过LAST_INSERT_ID()等获取自增值,也可重置或修改起始值。扩展方案可创建序列管理表实现自定义序列,通过函数实现序列值的查询、递增和设置。注意自增列必须是主键且整型,重置序列需谨慎处理并发问题,自定义序列适合批量管理和特殊自增需求场景。

2025-11-27 00:00:00 448

原创 MySQL mysql-connector

本文介绍了MySQL8.0数据库操作的关键步骤:1)安装适配驱动并配置用户权限;2)数据库创建与连接;3)数据表操作(创建/查看/主键设置);4)数据增删改查(含批量操作和防SQL注入);5)删除表操作。重点注意事项包括:操作后需commit提交、MySQL8.0认证插件适配、使用占位符防注入、更新删除必须加WHERE条件等。全文提供了Python操作MySQL8.0的完整代码示例,涵盖从安装配置到基本CRUD操作的完整流程。

2025-11-26 20:08:23 266

原创 MySQL 元数据

本文总结了MySQL元数据查询的常用方法。主要内容包括:1) 命令行高频查询语句,如SHOW DATABASES、DESC表名等;2) information_schema系统库中的核心表及其用途;3) Python操作MySQL元数据的常用库对比及示例代码;4) 服务器元数据查询命令;5) Python库选型建议。文章提供了从基础查询到编程实现的完整指南,适合数据库管理员和开发人员快速查阅。

2025-11-26 11:40:22 332

原创 MySQL 复制数据表

摘要:MySQL表复制方法可分为三类:1)仅复制结构:推荐使用CREATE TABLE 新表 LIKE 旧表保留完整属性,简易方法会丢失索引;2)完整复制(结构+数据):分步法通过SHOW CREATE TABLE获取完整语句,快捷法组合LIKE和SELECT,或使用mysqldump命令;3)灵活复制:支持字段筛选、重命名、数据过滤及自定义属性。核心区别在于是否保留索引等元数据,需根据需求选择合适方法。

2025-11-26 11:25:15 361

原创 计算机基础速通--数据结构·排序的基础应用

文章摘要:本文系统总结了常见排序算法(插入、希尔、冒泡、快速、选择、堆、归并、基数排序)的核心思想、代码实现及优化技巧。作者通过扑克牌整理等生活化类比解释算法原理,强调"知识复利"效应——创新源于旧方法的融合,而非从0到1的突变。每种算法均提供Java实现模板、易错点分析及LeetCode练习题(如912题),并讨论其时间复杂度、稳定性等特性。特别指出小规模数据适用插入排序,大规模数据推荐归并/堆排序,而基数排序适合非比较场景。整体突出理论与实践结合的学习方法。

2025-08-21 00:02:29 986

原创 计算机基础速通--数据结构·查找的基础应用

文章摘要:本文系统介绍了查找算法的核心概念和方法,包括查找表分类、效率评价指标(ASL计算)及常见查找技术。重点讲解了顺序查找、折半查找、分块查找的实现与优化,详细分析了二叉排序树、平衡二叉树(AVL)和红黑树的特性与操作。针对大规模数据,深入解析B树/B+树的结构差异及应用场景。最后探讨散列表的实现原理,包括散列函数设计和冲突处理策略(拉链法、开放定址法)。通过理论分析、代码实现和典型例题,全面构建了查找算法的知识体系,为数据库索引等实际应用提供理论基础。

2025-08-20 11:41:40 1041

原创 计算机基础速通--数据结构·图的基础应用三(基础图算法进阶)

本文探讨了情绪在学习中的作用,并详细介绍了拓扑排序和关键路径算法。作者认为,有效学习需要合理调动情绪,通过构建情景引导主动思考。在算法部分,文章系统讲解了AOV网络和AOE网络的概念,以及拓扑排序(Kahn算法)和逆拓扑排序的实现原理与代码示例,包括课程表问题的应用。关键路径部分则阐述了AOE网络的特点、求解步骤和代码实现,强调其在项目管理中的重要性。文章通过"番茄炒蛋"等生活化案例,将抽象算法与实际应用相结合,帮助读者理解依赖关系管理和任务调度优化的核心思想。

2025-08-17 17:17:37 1109

原创 计算机基础速通--数据结构·图的基础应用二(基础图算法)

本文介绍了最小生成树(MST)和最短路径算法的关键知识点。主要内容包括:MST的Prim和Kruskal算法实现与比较,BFS、Dijkstra和Floyd最短路径算法的原理与应用。重点讲解了各算法的核心思想、实现细节、易错点及优化方法,并通过LeetCode例题进行实践演示。文章还探讨了不同算法的适用场景,如Prim适合稠密图、Kruskal适合稀疏图,Floyd能处理负权边等特性,为图论算法学习提供了系统性的指导。

2025-08-16 14:57:31 1169

原创 计算机基础速通--数据结构·图的基础应用一(概念与简单图搜索)

本文分享了图数据结构的学习心得,重点总结了图的定义、分类、存储结构和遍历算法。主要内容包括:1)图的基本概念,如无向图/有向图、简单图/多重图;2)顶点与边的度量方式;3)图的四种存储结构(邻接矩阵、邻接表、十字链表、邻接多重表)及其适用场景;4)BFS和DFS遍历算法的实现要点、时间复杂度和应用差异。文章通过代码示例详细说明了各种图操作的实现方法,并分析了常见易错点。最后强调了图的连通性判断在面试中的重要性,以及不同存储结构对算法性能的影响。

2025-08-14 09:44:57 1096

原创 计算机基础速通--数据结构·树的应用

本文系统总结了树与二叉树的核心知识点,包括基础概念、存储结构、遍历算法、线索化实现以及经典应用。主要内容包括:1. 树的基本性质与术语,如结点度、层次、高度等;2. 二叉树的特殊类型(满二叉树、完全二叉树)及其性质;3. 二叉树的顺序和链式存储结构;4. 四种遍历方式(前序、中序、后序、层序)的递归与非递归实现;5. 线索二叉树的构建与前驱/后继查找算法;6. 树与森林的转换方法;7. 哈夫曼树构造与编码应用;8. 并查集的高效实现与优化策略。文章通过LeetCode典型例题(如中序遍历、对称二叉树、二叉搜

2025-08-12 12:42:14 850

原创 计算机基础速通--数据结构·串的应用

基础概念 重点掌握字符串定义、子串操作、存储结构(顺序/链式)对比及模式匹配算法(KMP为核心) 区分空串与空格串,理解Java字符串不可变性 模式匹配算法 KMP算法优化思想:通过next数组避免主串回溯,时间复杂度O(m+n) 需掌握next数组计算(最长相等真前后缀)及nextval优化 代码实现 字符串基本操作(赋值、连接、子串提取) 滑动窗口应用(无重复字符子串、字母异位词) 动态规划解决回文问题

2025-08-08 17:39:25 883

原创 计算机基础速通--数据结构·栈与队列应用

文章摘要: 本文探讨了两个主要话题:学习方法与数据结构算法。在学习方法部分,作者反思了单纯依赖意志力的弊端,提出B=MAP行为模型(动机、能力、提示),强调通过微小行动、习惯培养和正反馈来提升学习效率。在数据结构方面,文章系统讲解了栈、队列和数组的核心概念与实现,包括存储结构对比、经典算法应用(如括号匹配、表达式求值、滑动窗口等)以及特殊结构优化(单调栈、循环队列)。通过大量代码示例(Java实现)和LeetCode题目解析,展示了如何运用这些数据结构解决实际问题,如中缀表达式转换、矩阵压缩存储等,为算法学

2025-08-05 10:23:00 1035

原创 计算机基础速通--数据结构·线性表应用

本文系统梳理了线性表的核心考点,聚焦三大维度:存储结构特性、操作实现和场景选型。首先对比了顺序表(连续存储、随机访问快)和链表(离散存储、增删高效)的本质区别及适用场景。其次详细讲解了顺序表插入/删除、链表反转/环检测等核心操作的代码实现,强调边界处理和复杂度分析。最后通过实际案例(如通讯录系统、约瑟夫环问题)展示了数据结构选型方法,并附LeetCode经典题目解析。全文通过200+行示例代码,帮助读者深入理解线性表的底层逻辑与工程应用。

2025-08-01 13:50:59 792

原创 机器学习(重学版)基础篇(算法与模型一)

本文基于周志华《机器学习》系统梳理了线性模型、决策树和神经网络三大核心算法。线性模型部分详细解析了线性回归、对数几率回归的数学形式、损失函数及优化方法;决策树部分重点介绍了划分选择准则(信息增益、增益率、基尼指数)和剪枝处理策略;神经网络部分深入剖析了神经元模型、感知机原理、多层前馈网络结构及误差逆传播算法(BP算法),并探讨了参数寻优中的局部极小问题及优化策略。全文通过数学推导与直观解释相结合,系统阐述了这些经典机器学习算法的理论基础与实现细节。

2025-07-28 19:10:19 718

原创 机器学习(重学版)基础篇(概念与评估)

机器学习是一门通过计算手段利用经验(以数据形式存在)改善系统性能的学科。其核心是研究 “学习算法”—— 通过该算法,输入经验数据可生成 “模型”,模型能对新情况(如未见过的样本)做出判断。形式化定义:若计算机程序通过经验 E,在任务类 T 上的性能(以 P 评估)得到改善,则称该程序对 E 进行了学习。

2025-07-26 17:29:54 491

原创 数字图像处理第二次实验

本文介绍了图像处理中的空间域和频域滤波技术实验。空间域实验实现了高斯噪声、椒盐噪声的生成,以及均值滤波、中值滤波、最大值和最小值滤波等多种空间域滤波方法,通过PSNR指标评估滤波效果。频域实验则实现了傅里叶变换与频谱分析、理想/巴特沃斯/高斯滤波器的设计、相位/幅度分离重构以及图像去噪处理等技术。实验结果表明,中值滤波对椒盐噪声效果最佳,而均值滤波更适合处理高斯噪声;在频域中,巴特沃斯滤波器在去噪与保留细节间取得较好平衡。文中还对比了不同滤波方法的优缺点,并提供了完整的Python实现代码。

2025-06-05 15:31:46 2330

原创 数字图像处理第一次实验

本文介绍了两个基于OpenCV和Matplotlib的图像处理实验。实验一展示了灰度图像读取、直方图计算和可视化分析的技术流程,包含关键统计指标计算和图像特性分析。实验二重点演示直方图均衡化技术,通过对比处理前后图像及其直方图,量化分析对比度提升效果。两个实验均采用专业可视化呈现结果(2×2布局),支持中文字体显示,并输出详细的量化分析报告,包括均值、标准差、动态范围等关键指标对比。代码实现了完整的图像处理流程,从读取图像到结果保存,适用于教学和科研场景下的图像增强技术验证。

2025-06-05 15:03:49 1128

原创 LeetCode百题刷004(哈希表优化两数和问题)

本文介绍了两种解决LeetCode"两数之和"问题的方法。第一种是暴力枚举法,通过双重循环查找符合条件的数对,时间复杂度O(n²),空间复杂度O(1)。第二种是优化的哈希表法,利用哈希表O(1)查询特性存储已遍历元素,只需单次循环即可找到匹配数对,时间复杂度降低为O(n),但增加了哈希表的空间开销。文章还解释了为什么哈希表要在遍历过程中动态更新,而不是预先建立,这种方式能更高效利用存储空间。两种方法各有优劣,哈希表法在时间效率上更优。

2025-05-26 21:10:53 629

原创 Linux复习笔记(六)shell编程

本文简要介绍了Shell编程的基础知识和常用操作。首先,Shell作为用户与Linux内核交互的桥梁,既是命令解释器,也是一种脚本语言。文章详细讲解了Shell脚本的编写规范、变量类型及其操作、算术与逻辑运算符的使用、流程控制语句(如if、case)、正则表达式的基本语法以及循环结构(如for、while)。此外,还涵盖了输入输出操作、文件判断和综合案例,如系统信息菜单和文件遍历统计。通过这些内容,读者可以快速掌握Shell编程的基本技能,并应用于实际脚本编写中。

2025-05-16 09:04:48 1303 7

原创 Linux复习笔记(五) 网络服务配置(dhcp)

DHCP(动态主机配置协议)是一种应用层协议,用于自动分配和管理IP地址,简化网络设备配置并提高IP地址利用率。其核心功能包括动态IP分配、地址管理和兼容性。DHCP通过DORA流程(发现、提供、请求、确认)完成地址分配,支持动态、自动和手动三种分配方式。租约机制控制IP地址的有效期,支持地址回收与复用。DHCP中继代理用于跨子网地址分配,将客户端的广播请求转换为单播,转发至远程DHCP服务器。配置文件(如/etc/dhcp/dhcpd.conf)包含参数、选项和声明,定义IP分配规则。常见参数包括租约时间

2025-05-14 17:04:59 1398

原创 Linux复习笔记(四) 网络服务配置(ftp)

FTP(文件传输协议)是一种用于在远程和本地计算机系统之间传输文件的标准协议,工作在应用层,使用TCP协议确保数据传输的可靠性,并支持断点续传功能。FTP的主要作用包括跨平台文件传输、高效资源共享、网站维护与内容更新以及网络管理优化。然而,FTP存在安全性缺陷,如未加密传输数据,易受中间人攻击,因此衍生出FTPS和SFTP等安全协议。 FTP基于客户-服务器模型,使用双连接机制:控制连接(默认TCP端口21)用于传输命令和响应码,数据连接负责实际文件传输。FTP有两种工作模式:主动模式(PORT)和被动模式

2025-05-14 00:15:48 1008

原创 Linux复习笔记(三) 网络服务配置(web)

本文详细介绍了Web服务配置的基础知识,包括HTTP协议的核心作用、C/S架构、Web服务的工作流程以及URL格式解析。HTTP协议通过请求和响应报文实现客户端与服务器的通信,并通过Cookie和Session管理会话状态。Web服务分为静态和动态两种,动态服务支持用户交互和数据库查询。文章还介绍了主流动态语言(如ASP、PHP、JSP)的特点及部署环境,并详细解析了Apache服务器的配置和使用,包括如何更换监听端口、设置网页存储目录和发布静态网站。通过本文,读者可以掌握Web服务的基本原理和配置方法。

2025-05-12 18:15:11 1762 1

原创 LeetCode百题刷003(449周赛一二题)

本文介绍了一个解决字符串删除问题的算法,目标是通过删除最少的字符,使得字符串中最多保留k种不同的字符。首先,使用哈希表统计每个字符的出现次数,并按次数升序排序。如果字符种类数超过k,则逐步删除出现次数最少的字符,直到种类数等于k。最后,返回删除的字符总数。该算法通过统计频率、排序和累加操作,有效解决了问题,并提供了Python和C++的实现示例。

2025-05-11 16:51:47 1257

原创 LeetCode百题刷002摩尔投票法

本文介绍了三种解决LeetCode题目“169.多数元素”的方法。首先,排序法通过排序数组并取中间值来找到多数元素,时间复杂度取决于排序算法,空间复杂度为O(1)。其次,哈希表法利用哈希表记录元素出现次数,时间复杂度为O(n),空间复杂度为O(n)。最后,摩尔投票法通过抵消策略在O(n)时间复杂度和O(1)空间复杂度内找到多数元素,特别适合处理大规模数据。每种方法都有其优缺点,选择合适的方法可以提高问题解决的效率。

2025-05-09 17:01:34 1148

原创 LeetCode百题刷001双指针·快慢指针

本文介绍了如何解决LeetCode题目“80.删除有序数组中的重复项II”,要求原地修改数组并确保空间复杂度为O(1)。核心算法采用双指针技术,通过快指针i扫描数组,慢指针k标记有效部分的末尾。由于数组已排序,重复元素连续出现,只需确保每个元素最多保留两次。具体步骤包括:处理边界情况(数组长度≤2时直接返回),初始化慢指针k=2,遍历数组并检查当前元素是否与nums[k-2]相同,决定是否保留。最终,k即为新数组的长度。时间复杂度为O(n),空间复杂度为O(1)。

2025-05-09 12:49:14 499

原创 Linux复习笔记(二) 网络服务配置(samba /DNS)

​​协议基础​​​​核心进程​:​​​工作流程​:​要求:对于给的配置文件要会看,并且会按要求给出配置代码​​配置文件()​​​​全局配置(Global Settings)​​:​​共享定义(Share Definition)​​:2.1.2 全局配置参数及作用表(重点看蓝色) 参数 说明 Workgroup=MYGROUP 设置工作组名称,要求 Windows 主机的工作组必须与之同名 。这确保了 Samba 服务器与 Windows

2025-05-08 18:00:34 1574

原创 Linux复习笔记(一)基础命令和操作

要求:了解,知道有三个用户类型,知道之间的区别在Linux中,主要分为以下三种用户类型:(1)root用户:在Linux系统中,root用户的uid为0,该用户对所有的命令和文件具有访问、修改、执行的权限。(2)普通用户:系统中大多数的用户为普通用户,需要管理员用户进行创建,拥有的权限收到一定的限制,一般只在用户自己的主目录拥有完全权限,提升权限时,需要使用sudo命令。

2025-05-07 19:42:38 1663 2

原创 Linux:ftp 配置实验

实验目的:1. 了解 FTP 服务器工作原理2. 能够安装 FTP 服务器的软件3. 能够配置常用 FTP 服务。

2025-04-28 12:46:19 1559

原创 Linux:Web服务配置(课堂实验总结)

开放了端口,若未在 SELinux 策略中添加对该端口的支持,仍会阻止 Apache 绑定。SELinux 会严格控制进程对网络端口等资源的访问,即使通过。若提示 “Syntax OK”,说明语法无误;若有错误,根据提示修正。如果服务能正常启动,说明是 SELinux 策略导致的问题。确保 Apache 配置文件

2025-04-14 12:09:16 1002

原创 Linux:DNS服务配置(课堂实验总结)

​:BIND提供域名解析的基础服务,支持正向/反向解析、主从同步等功能。里边的ip 设成上图红圈内的就行。修改后就可以了,以下是成功结果。这两部分配置改成红圈内的IP。​:(ip同样改自己的)​:(ip同样改自己的)​:(ip同样改自己的)红色部分填入自己的ip。​(假设 IP 段为。

2025-04-13 15:26:55 1918

原创 数据结构与算法分析:哈希表简述(一)

哈希表(hash table),又称散列表,是一种高效的数据结构,用于存储键值对(Key-Value Pairs)。​TableSize0比如:输入1得到A的时间复杂度为(相当于数组下标访问)

2025-04-09 20:04:51 1316

原创 软件工程(应试版)图形工具总结(二)

核心定义​目的:描述软件系统的层次结构,体现模块的从属关系。​适用阶段:自顶向下设计(Top-Down Design)的核心工具。​形态特征树状结构,根节点为系统顶层模块。每个父模块分解为多个子模块。不展示模块间数据流或控制流。步骤1:确定系统边界。步骤2:构建模块层次树。步骤3:定义调用关系。步骤4:标注数据流。步骤5:处理特殊逻辑。步骤6:连接数据存储。步骤7:验证与优化。

2025-04-04 20:45:36 2315

自己总结的搜索引擎应试复习笔记参考教材《搜索引擎技术与应用开发》

自己总结的搜索引擎应试复习笔记参考教材《搜索引擎技术与应用开发》

2025-04-20

自己总结的软件工程应试笔记(参考《软件工程导论(第六版)》1-7章)

自己总结的软件工程应试笔记(参考《软件工程导论(第六版)》1-7章)

2025-04-19

自己总结的数据挖掘复习笔记用于应试考试

自己总结的数据挖掘复习笔记用于应试考试,参考教材《数据挖掘算法与应用python版》

2025-04-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除