- 博客(77)
- 收藏
- 关注
原创 C++(黑马)05-提高编程
学习目标:vector中存放自定义数据类型,并打印输出//自定义数据类型public:mAge = age;//存放对象//创建数据it!= v.end();it++) {//放对象指针//创建数据it!= v.end();test02();return 0;
2026-08-09 17:29:13
248
原创 C++(黑马)04-职工管理系统
职工管理系统可以用来管理公司内所有员工的信息本教程主要利用C++来实现一个基于多态的职工管理系统公司中职工分为三类:普通员工、经理、老板,显示信息时,需要显示职工编号、职工姓名、职工岗位、以及职责普通员工职责:完成经理交给的任务经理职责:完成老板交给的任务,并下发任务给员工老板职责:管理公司所有事务系统界面效果图如下:需根据用户不同的选择,完成不同的功能!
2026-08-08 23:05:35
199
原创 C++(黑马)03-核心编程
*作用:**函数名可以相同,提高复用性同一个作用域下函数名称相同函数参数类型不同或者个数不同或者顺序不同函数的返回值不可以作为函数重载的条件//函数重载需要函数都在同一个作用域下cout << "func 的调用!" << endl;cout << "func (int a) 的调用!" << endl;cout << "func (double a)的调用!" << endl;cout << "func (int a ,double b) 的调用!" << endl;
2026-08-05 15:00:49
164
原创 C++(黑马)02-通讯录管理系统
因此我们可以把检测联系人是否存在封装成一个函数中,如果存在,返回联系人在通讯录中的位置,不存在返回-1。设计时候可以在通讯录结构体中,维护一个容量为1000的存放联系人的数组,并记录当前通讯录中联系人数量。删除联系人前,我们需要先判断用户输入的联系人是否存在,如果存在删除,不存在提示用户没有要删除的联系人。实现添加联系人功能,联系人上限为1000人,联系人信息包括(姓名、性别、年龄、联系电话、家庭住址)思路:判断如果当前通讯录中没有人员,就提示记录为空,人数大于0,显示通讯录中信息。
2026-08-05 09:50:47
157
原创 C++(黑马)01-基础
所谓数组,就是一个集合,里面存放了相同类型的数据元素**特点1:**数组中的每个数据元素都是相同的数据类型**特点2:**数组是由连续的内存位置组成的数据类型 数组名[ 数组长度 ];数据类型 数组名[ 数组长度 ] = { 值1,值2 ...};数据类型 数组名[ ] = { 值1,值2 ...};示例//定义方式1//数据类型 数组名[元素个数];//利用下标赋值//利用下标输出//第二种定义方式//数据类型 数组名[元素个数] = {值1,值2 ,值3 ...};
2026-08-04 19:33:45
260
原创 深度学习03(黑马)-神经网络基础
人工神经网络(Artificial Neural Network, 简写为ANN)也简称为神经网络(NN),是一种模仿生物神经网络结构和功能的计算模型。它由多个互相连接的人工神经元(也称为节点)构成,可以用于处理和学习复杂的数据模式,尤其适合解决非线性问题。人工神经网络是机器学习中的一个重要模型,尤其在深度学习领域中得到了广泛应用。人脑可以看做是一个生物神经网络,由众多的神经元连接而成。各个神经元传递复杂的电信号,树突接收到输入信号,然后对信号进行处理,通过轴突输出信号。
2026-05-31 23:35:45
3481
原创 深度学习02(黑马)-PyTorch框架使用
张量是PyTorch中的核心数据抽象PyTorch中的张量就是元素为同一种数据类型的多维矩阵,与NumPy数组类似。PyTorch中,张量以"类"的形式封装起来,对张量的一些运算、处理的方法(数值计算、矩阵操作、自动求导)被封装在类中。多个二维张量组成三维张量多个三维张量组成四维张量多个四维张量组成五维张量。
2026-05-31 21:23:36
306
原创 深度学习01(黑马)-深度学习简介
(Deep Learning)是机器学习的分支,是一种以的算法。深度学习中的形容词“深度”是指在网络中使用多层。深度学习核心思想是,擅长处理高维数据,如图像、语音和文本。
2026-05-31 17:40:07
239
原创 机器学习08(黑马)-聚类
一种典型的无监督学习算法,主要用于将相似的样本自动归到一个类别中。在聚类算法中根据样本之间的相似性,将样本划分到不同的类别中,对于不同的相似度计算方法,会得到不同的聚类结果,常用的相似度计算方法有欧式距离法。参数:n_clusters:开始的聚类中心数量整型,缺省值=8,生成的聚类数,即产生的质心(centroids)数。方法:计算聚类中心并预测每个样本属于哪个类别,相当于先调用fit(x),然后再调用predict(x)已知:客户性别、年龄、年收入、消费指数。
2026-05-04 23:58:27
362
原创 机器学习06(黑马)-集成学习
Adaptive Boosting(自适应提升)基于 Boosting思想实现的一种集成学习算法,核心思想是通过逐步提高那些被前一步分类错误的样本的权重来训练一个强分类器。弱分类器的性能比随机猜测强就行,即可构造出一个非常准确的强分类器。训练时,样本具有权重,并且在训练过程中动态调整。被分错的样本的样本会加大权重,算法更加关注难分的样本。(观察下图)(1)不同的训练集—>调整样本权重(2)“关注”—>增加错分样本权重(3)“器重”—>好的分类器权重大(4) 样本权重间接影响分类器权重。
2026-05-04 02:39:28
559
1
原创 机器学习05(黑马)-决策树
决策树是什么?决策树是一种树形结构,树中每个内部节点表示一个特征上的判断,每个分支代表一个判断结果的输出,每个叶子节点代表一种分类结果决策树的建立过程1.特征选择:选取有较强分类能力的特征。2.决策树生成:根据选择的特征生成决策树。3.决策树也易过拟合,采用剪枝的方法缓解过拟合。Cart模型是一种决策树模型,它即可以用于分类,也可以用于回归。与ID3、C4.5等算法不同,CART在分类任务中使用基尼指数 (Gini Index)来选择最优特征,在回归任务中则使用最小化均方误差(MSE)。
2026-05-03 14:48:29
683
原创 机器学习04(黑马)-逻辑回归
solver损失函数优化方法训练速度:liblinear 对小数据集场景训练速度更快,sag 和 saga 对大数据集更快一些。newton-cg、lbfgs、sag、saga 支持 L2 正则化或者没有正则化2liblinear 和 saga 支持 L1 正则化penalty:正则化的种类,l1 或者 l2C:正则化力度默认将类别数量少的当做正例流失用户指的使用过产品因为某些原因不再使用该产品。随着产品的更新迭代,都会存在一定的流失情况,这时正常现象。
2026-05-01 17:49:50
385
原创 机器学习03(黑马)-线性回归
数据介绍给定的这些特征,是专家们得出的影响房价的结果属性。我们此阶段不需要自己去探究特征是否有用,只需要使用这些特征。到后面量化很多特征需要我们自己去寻找。
2026-05-01 16:52:36
498
原创 机器学习02(黑马)-KNN算法
1.掌握KNN算法分类API2.掌握KNN算法回归API数据文件 train.csv 和 test.csv 包含从 0 到 9 的手绘数字的灰度图像。每个图像高 28 像素,宽28 像素,共784个像素。每个像素取值范围[0,255],取值越大意味着该像素颜色越深训练数据集(train.csv)共785列。第一列为 “标签”,为该图片对应的手写数字。其余784列为该图像的像素值训练集中的特征名称均有pixel前缀,后面的数字([0,783])代表了像素的序号。# 1. 显示图片.
2026-05-01 16:51:36
151
原创 数据分析学习07(黑马)-RFM案例
策略1:加权得分 定义用户价值根据加权得分rfm_wscore,你可以将客户划分为不同的群体。高价值客户rfm_wscore高于某个阈值,例如 4.0 到 5.0。这类客户在最近购买、频率高、消费金额大,属于最重要的客户群体。中等价值客户rfm_wscore介于中间范围,例如 2.0 到 4.0。这类客户表现较好,但在某些维度(如频率或金额)可能稍有不足。低价值客户rfm_wscore较低,例如低于 2.0。这类客户可能消费金额不高,购买频率低或最近很少购买,通常不是业务的主要目标群体。
2026-04-25 21:29:41
347
原创 数据分析学习06(黑马)-Matplotlib
x:要显示的刻度值y:要显示的刻度值# 增加以下两行代码# 构造x轴刻度标签x_ticks_label = ["11点{}分".format(i) for i in x]# 构造y轴刻度# 修改x,y轴坐标的刻度显示。
2026-04-25 13:26:25
624
原创 数据分析学习05(黑马)-Pandas
func:自定义函数axis=0:默认是列,axis=1为行进行运算定义一个对列,最大值-最小值的函数open 22.74。
2026-04-25 10:26:14
558
原创 数据分析学习04(黑马)-Numpy入门
Numpy(Numerical Python)是一个开源的Python科学计算库,用于快速处理任意维度的数组。Numpy支持常见的数组和矩阵操作。对于同样的数值计算任务,使用Numpy比直接使用Python要简洁的多。Numpy使用ndarray对象来处理多维数组,该对象是一个快速而灵活的大数据容器。NumPy提供了一个N维数组类型ndarray,它描述了相同类型的“items”的集合。
2026-04-25 00:33:36
412
原创 数据分析学习02(黑马)-MySQL基础
图解特点SQL语句可以写成一行, 也可以写成多行.如果SQL语句写了多行, 为了阅读方便, 可以增加缩进, 空格等, 方便查看格式.SQL不区分大小写, 建议关键字大写, 其它小写.SQL语句中注释的写法./*多行注释*/#单行注释– 单行注释 # --后边必须跟空格./*多行注释*/# 单行注释, 为了阅读方便, 可以多加1个空格(也可以不加)-- 单行注释, --后边必须加空格.常用的数据类型。
2026-04-24 22:04:05
399
原创 数据分析学习01(黑马)-Linux基础
操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。目录作用/bin二进制命令所在的目录(普通命令 => 普通用户itcast和超级管理员root)/boot系统引导程序所需要的文件目录,相当于Windows中的C盘/dev/device缩写,设备文件目录,磁盘,光驱 => /dev/sr0/etc。
2026-04-24 20:35:48
426
原创 python项目实战12-数据分析
df.groupby('产品类别').agg(['销售数量':'sum', '销售金额':'sum', '单价':'mean']) :根据产品类别分组,统计各个类别的商品的销售数量之和,销售金额之和,平均单价。df.groupby('产品类别')['销售额'].agg(['sum', 'max', 'min']):根据产品类别分组,统计各个类别的商品的销售数量之和、最大数量、最小数量。示例:df[df['单价'] >= 100] / df[df['类别'].isin(['..','..'])]
2026-04-16 11:27:55
483
原创 python项目实战11-正则表达式基础
(3) ['18809090000是我的手机号,188开头的,以00结尾的;(1) ['18809090000是我的手机号,188开头的,以00结尾的;search("正则表达式", "文本字符串"):从任意位置开始,搜索第一个匹配项。findall("正则表达式", "文本字符串"):从任意位置开始,搜索所有匹配项。match("正则表达式", "文本字符串"):从字符串的开头开始匹配。(1) match:从字符串的开头开始匹配(匹配第一个匹配项)(2) ['1880', '188开']
2026-04-14 21:08:30
307
原创 python项目实战10-网络机器人03
豆瓣的列表接口通常遵循 offset/limit 的分页逻辑,limit=20 表示每页只返回20条数据,start=0 表示从第0条数据开始取(即第一页),start=20 表示从第20条数据开始取(即第2页), start=40 表示从第40条数据开始取(即第3页)。要实现"加载更多"并爬取后续的电影信息,核心在于理解豆瓣分页数据的获取逻辑,也就是通过修改API接口中的 start 参数来控制页码(URL中包含start=0&limit=20),以下是具体的实现原理和修改方案。),伪装成浏览器访问。
2026-04-13 17:33:48
1843
原创 python项目实战10-网络机器人01
'罗天星', '男', '婴变前期', '星辰之力、星移斗转', '罗天星域守护者', '星辰古神传承', '星河图、星辰链']['司徒南', '男', '化神后期', '南宫剑诀、遁甲术', '南宫世家家主', '南宫世家传承', '南宫剑、遁甲符']['天运子', '男', '问鼎中期', '天运神通、推演之术', '天运宗宗主', '自创天运之道', '天运珠、问鼎印']['藤化元', '男', '元婴大圆满', '藤蔓束缚、化神之术', '藤家老祖', '藤家传承', '化神藤鞭、元婴护盾']
2026-04-12 21:36:01
1980
原创 python项目实战09-AI智能伴侣(ai_partner_5-6)
3.功能扩充(ai_partner_6):会话列表降序排序(最新会话显示在最上面)1.功能扩充(ai_partner_5):加载指定的会话信息,高亮显示。2.功能扩充(ai_partner_6):删除指定会话。
2026-04-11 22:16:32
73
原创 python项目实战09-AI智能伴侣(ai_partner_4)
它不仅能创建新对话,还能列出历史会话并提供加载和删除的入口。可以把它看作一个聊天应用的“文件管理器”,让你能保存、回顾和整理不同的对话。它会立即重新运行整个脚本,让用户能立刻看到一个干净的聊天界面和更新后的历史会话列表。将新会话的名称等信息保存到持久化存储(如文件或数据库)中,这样它才会出现在下方的历史列表里。在开始新话题前,把正在进行中的对话保存到历史记录里,防止内容丢失。将存储聊天记录的列表重置为空,相当于擦掉黑板,准备开始新的对话。)来生成一个新会话的名称,比如“新对话 1”、“新对话 2”等。
2026-04-11 21:44:09
441
原创 python项目实战09-AI智能伴侣(ai_partner_2-3)
这行代码的作用是创建一个"空容器"或"占位符",并将其赋值给变量response_message。它不再是使用固定的系统提示词,而是根据用户在界面上选择的“昵称”和“性格”,实时生成一段专属的指令发给 AI。Streamlit 的默认机制是:只要用户有交互,整个页面就会重新运行并刷新。这个坑位当前是空的,但你可以随时往里面填东西(比如文字、图表),而且。1.功能扩充(ai_partner_2):实现了一个。允许你打破这个规则,只更新页面的某一小块区域。,并将最终的完整回复保存到会话历史中。
2026-04-11 20:16:34
422
原创 python项目实战09-AI智能伴侣(ai_partner_1)
st.session_state就像一个“魔法字典”,它存储的数据会在整个会话期间保留下来,即使脚本反复重运行,数据也不会丢失。可以把它想象成一个应用的“记忆体”,让应用能够“记住”用户的选择和状态。这意味着,虽然你用了OpenAI的库,但你的请求实际上会被发送到DeepSeek的服务器,而不是OpenAI的服务器。)进行对话的“通行证”和“连接器”。这段代码通常用于替代 OpenAI 的官方 SDK,因为它使用了 OpenAI 的 Python 库语法,但将请求转发到了 DeepSeek 的服务器地址。
2026-04-11 17:12:46
447
原创 python项目实战08-大模型调用
与AI大模型的交互本质是无状态的,每一次请求响应都是相互独立的。(AI大模型本身没有真正的会话记忆能力)2.创建API key(首次创建一定要保存Key的值,以后不能显示查询)4.根据deepseek参考文档(deepseek官网中查询)填写信息。会话记忆-处理方案(会话历史滚雪球)3.安装Apifox,创建新项目。1.登录deepseek官网(
2026-04-09 08:26:27
54
原创 python项目实战07-DeepSeek调用测试(本地部署)
比如:1.5b,7b,8b,14b,32b,70b,671b。需要注意的是,Ollama提供的DeepSeek是量化压缩版本,对比官网的蒸馏版会更小,对显卡要求更低。ollama是一个模型管理工具和平台,它提供了很多国内外常见的模型,我们可以在其官网上搜索自己需要的模型:https://ollama.com/search。比如电脑内存32G,显存是8G,选择部署的是8b的模型,当然7b也是可以的,差别不大,都是可以流畅运行的。安装完成后,还需要配置一个环境变量,更改Ollama下载和部署模型的位置。
2026-04-08 19:59:51
429
原创 python核心语法06-面向对象基础
(1) 类名的命名规范,遵循大驼峰命名法,每个单词的首字母都是大写,单词之间没有分隔符,比如:UserInfo,UserAccount。(1) 魔法方法是指Python中提供的以双下划线开头和结尾的特殊方法,用于定义类的特殊行为,比如:__init__。(2) __dict__是Python中用户自定义类实例的一个特殊属性,用于以字典形式存储对象的属性。(1) 实例属性:实例属性属于每个具体对象的属性,每个对象都是独立的。(2)对象:对象是类的实例,是基于类创建出来的 (实例对象)。
2026-04-07 22:40:39
342
原创 python核心语法05-模块
注意:在通过 'from 包名 import *' 导入全部模块的时候,需要在 __init__.py 文件中添加 '__all__=[]',控制允许导入的模块列表。注意:__all__控制的是 from ... import * 时,要导入的功能,并不会影响直接导入具体的功能(如: from ... import 功能)。2.自定义模块:当开发一些复杂的项目,为了让项目结构更清晰,更便于项目的维护管理 及 代码的复用,可能会把一个项目拆分为若干个模块。作用:模块文件较多时,用来管理多个模块。
2026-04-07 22:05:51
62
原创 python核心语法04-函数
4. **kwargs:不定长关键字参数,函数调用时,通过关键字参数传递多个参数封装到一个字典(dict),**kwargs适用于处理数量不确定的选项(函数的配置参数,用来定制函数的行为)嵌套调用指的是在一个函数中,又调用了另外一个函数。(1) 函数定义时的参数列表与返回值语句是可有可无的(由需求确定),函数必须先定义后调用执行(函数定义时,内部代码并未执行,在调用时才执行)。(3) 默认参数:默认参数也称为缺省参数,用于在定义函数时,为参数提供默认值,调用函数时,可以不传递有默认值的参数。
2026-04-07 21:53:44
380
原创 python核心语法03-数据存储容器
案例2: 现有三个变量,分别为:a = 100,b = 200,c = 300,现需要将这三个变量值进行交换,将a,b,c的值分别赋值给c,a,b,并将其输出到控制台。5.字典(dict):Python中的字典(dict),里面存储的是键值对(key: value)类型的数据,可以根据键(key)找到对应的值(value)。如:"Python" 'Python' """Python"""案例1:将用户输入的10个数字,存储到一个列表中,并将列表中的数字进行排序,输出其中的最小值、最大值 和 平均值。
2026-03-31 21:54:38
436
原创 python核心语法02-流程控制语句
用法2:range(start,end) -> 获取一个从start开始,到end结束的数字序列(不含end本身) range(2,8) 获取的数据就是 2,3,4,5,6,7。用法3:range(start,end,step) -> 获取一个从start开始,到end结束的数字序列,step步长(不含end本身)range(0,10,2) 获取的数据就是 0,2,4,6,8。range(5) 获取的数据就是 0,1,2,3,4。if条件判断:条件成立时,要执行对应的操作。循环结束时, 执行的代码。
2026-03-30 14:43:55
225
原创 python核心语法01-数据存储与运算
注:涉及到浮点数的算术运算时,可能会损失精度(因为计算机底层是基于二进制来进行数据的存储和处理的,二进制是无法准确的表示所有的小数的)通过isinstance()检查数据是否属于指定的类型,返回的是一个bool值,具体语法为:isinstance(数据,类型)(把右边的值,赋给左边的变量)input语句:(函数)的功能就是获取键盘输入的数据,具体的用法为:s = input(提示信息)(1)字符:是文本世界的基本单位,一个字母、一个数字、一个标点符号、一个汉字等都是一个字符。
2026-03-30 14:09:41
346
原创 代码随想录-图论29
但本题有 负权回路,如果松弛 n 次,结果就会有变化了,因为 有负权回路 就是可以无限最短路径(一直绕圈,就可以一直得到无限小的最短距离)。对所有边松弛一次,相当于计算 起点到达 与起点一条边相连的节点 的最短距离,那么对所有边松弛 k + 1次,就是求 起点到达与起点k + 1条边相连的节点的 最短距离。本题是单源有限最短路问题,也是 bellman_ford的一个拓展问题,如果理解bellman_ford 其实思路比较容易理解,但有很多细节。节点数量为n,起点到终点,最多是 n-1 条边相连。
2026-01-25 22:23:55
805
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅