- 博客(58)
- 收藏
- 关注
原创 4.6 继承
3. 当子类与父类拥有同名的成员函数,子类会隐藏父类中同名成员函数,加作用域可以访问到父类中同名函数。1. 羊继承了动物的数据,驼同样继承了动物的数据,当草泥马使用数据时,就会产生二义性。例如我们看到很多网站中,都有公共的头部,公共的底部,甚至公共的左侧列表,只有中心内容不同。问题:当子类与父类出现同名的成员,如何通过子类对象,访问到子类或父类中同名的数据呢?我们发现,定义这些类时,下级别的成员除了拥有上一级的共性,还有自己的特性。**问题:**从父类继承过来的成员,哪些属于子类对象中?
2024-04-25 23:01:40 599
原创 4.4 友元c++
生活中你的家有客厅(Public),有你的卧室(Private)客厅所有来的客人都可以进去,但是你的卧室是私有的,也就是说只有你能进去但是呢,你也可以允许你的好闺蜜好基友进去。在程序里,有些私有属性 也想让类外特殊的一些函数或者类进行访问,就需要用到友元的技术友元的目的就是让一个函数或者类 访问另一个类中私有成员友元的关键字为 ==friend==友元的三种实现全局函数做友元* 类做友元* 成员函数做友元。
2024-04-21 11:15:47 194
原创 4.2.8 静态成员
静态成员就是在成员变量和成员函数前加上关键字static,称为静态成员。* 静态成员函数只能访问静态成员变量。* 所有对象共享同一份数据。* 所有对象共享同一个函数。* 类内声明,类外初始化。#### 4.2.8 静态成员。* 在编译阶段分配内存。**示例2:**静态成员函数。
2024-04-19 19:45:11 109
原创 组合型和排列型枚举
组合型枚举排列组合是大家都接触过的概念,而组合型枚举则是在 n 个元素中随机选出 m 个元素的问题。对于每一种可能的选择方案,我们需要确定选择了哪 m 个元素,这就是组合型枚举。组合型枚举有一套固定的流程和算法模板,需要大家进行记忆。题目:公平抽签题目描述:小 A 的学校,蓝桥杯的参赛名额非常有限,只有 m 个名额,但是共有n 个人报名,其中 m≤n。作为老师非常苦恼,他不知道该让谁去,他在寻求一个绝对公平的方式。于是他准备让大家抽签决定,即 m 个签是去,剩下的是不去。
2024-03-31 11:35:53 284
原创 vector快速入门
当然你如果想删除元素,可以使用pop_back()删除动态数组中最后一个元素。注意这里括号内不要加任何东西;如果动态数组内已为空再使用pop_back会出错!8,可以使用/*名称*/.empty()来检测这个动态数组的大小是否为0;但是需要注意不要超过数组大小范围。10,动态数组的排序需要使用迭代器。
2024-03-30 20:20:09 127
原创 4、构造函数和构析函数
对象的初始化和清理也是两个非常重要的安全问题。一个对象或者变量没有初识状态,对其使用后的后果是未知的。同样的使用完一个对象或者变量,没有及时进行清理,也会造成一定的安全问题。C++利用了构造函数和析构函数解决上述问题,这两个函数将会被编译器自动斓用,完成对象初始化和清理工作。对象的初始化和清理工作是编译器强制要我们做的事情,因此如果我们不提供构造和析构,编译器会提供,但是编译器提供的构造函数和析构函数是空实现。
2024-03-27 20:10:11 293
原创 类的案例:设计立方体,点和圆的位置关系
分别用全局函数和成员函数判断两个立方体是否相等。设计一个圆类和一个点类判断圆和点的关系。求立方体的面积和体积。
2024-03-26 16:03:57 198
原创 队列,Vector 容器(类),Map映射
1、快递分拣蓝桥王国的每个快递都包含两个参数:1.快递单号 2.快递城市。小李是蓝桥王国的一名快递员,每天的快递分拣让他苦不堪言。于是他想要你帮他设计一个程序用于快递的分拣(将不同快递按城市信息分开)。输入第一行包含一个整数 �N,表示快递的个数。接下来第 N+1 行每行包含一个字符串 �S 和一个字符串 �P,分别快递单号以及快递对应的城市。1≤�≤1031≤N≤103,保证数据量不超过 106106。
2024-03-24 13:23:51 304
原创 蓝桥杯第一天
为了公平起见,我们希望在总付钱量恰好为 �S 的前提下,最后每个人付的钱的标准差最小。这里我们约定,每个人支付的钱数可以是任意非负实数,即可以不是 1 分钱的整数倍。幸运的是,所有人带的钱的总数是足够付账的,但现在问题来了:每个人分别要出多少钱呢?标准差的介绍:标准差是多个数与它们平均数差值的平方平均数,一般用于刻画这些数之间的"偏差有多大"。如下的 1010 行数据,每行有 1010 个整数,请你求出它们的乘积的末尾有多少个零?根本是找一共有多少2*5=10,所以找2,5的数量,取最少的数。
2024-03-23 12:13:34 224
原创 c++类。
3)private 私有权限 类内可以访问 类外不可以访问 子类不可以访问父类中的私有内容。2)protected 保护权限 类内可以访问 类外不可以访问 子类可以访问父类中的保护内容。当我们把年龄输入999时,就会提示错误,这样以后我们在复杂的代码中如果输入了错误的数据的话就会有一个检测作用。属性如果设置为私有,如果我想给你访问,那么我就提供接口,如果不想给你访问,我就不提供接口。类在设计的时候,可以把属性与行为放在不同的权限下,加以控制。
2024-03-20 16:44:01 115
原创 算法2贪心
最快的人带着第二快的人过去,然后最快的回来,最后带着最慢的过去(三个人的时间和)②最快的人把第二快的和最慢的送过去(最快+2*第二+倒数第一)①最快的人送两个最慢的人过去(2*最快+倒数第一+倒数第二)第二步:我们来解决一下人数小于4的情况。第三步:我们处理一下三个人以上的情况。两个人一起过去(两个人的时间和)题目洛谷:P1809 过河问题。我们的计划是每一轮送过去两个人。只需要将这两个值取最小值就行了。注意:开long long保险。第一步:快速排序(不赘述)
2024-03-17 18:03:02 340
原创 蓝桥杯算法
小算是一个“优秀又不甘平庸的韭菜”,想要在股票市场上大赚一笔。这天小算又看中了一只潜力股。现在已知这只股票在n天内的价格为P0,P1,....,Pn-1,小算为了规避风险,只买了一股股票,小算在这n天内只有一次买卖机会,并且不能在买人股票当天或买入股票之前卖出股票,现在请你设计一个程序,计算出小算能获得的最大利润。第1行为一个整数n,第2行为n个整数P0,P1,....,Pn-1,表示每天的股价。输出一个整数,即最大利润。
2024-03-17 11:51:01 621
原创 基于pytorch实现手写数字识别
2,再将test.py文件用vscode打开,pycharm也行(主要我不怎么会用),这里用vscode展示。调整a,b的值,如梯度下降算法,ADAM算法将神经网络问题转为最优化问题,重复过程几万次。是线性的,但不是每个都是线性的,所以再套上一个非线性函数(也叫激活函数),f()1)使用MNIST数据集:手写数字图片7万张(训练6万张,测试1万张)。神经网络的本质是一个数学函数,训练的过程就是调整函数中的参数。1)进入所安装的pytorch环境,我的是pytorch。2)什么是神经网络?
2024-03-02 16:47:06 912
原创 python
in(),cos(),sqrt(),log()...向量/矩阵运算,傅里叶变换,随机生成数。L.insert(i,x) #在第i号元素上添加x。a>-1 and a<1 也可以写成-1<a<1。L.pop(i) #删除第i号元素。range(a,b,c):[a,b),公差为c。x=L[i:j] :读取第[i,j)号元素。a>1 or a<-1表示a>1或a<-1。range(a,b):[a,b),公差为1。range(b): [0,b),公差为1。
2024-02-01 16:06:08 809
原创 期末题目c++数组
3,下列函数change的功能是,将字符串中的小写字母转成大写字母,请将程序补充完整。2,阅读以下程序,写出运行结果▁8 4▁▁。1,下列不正确的初始化语句是(C)
2024-01-17 16:16:12 465
原创 题目基础算法蓝桥真题
32位二进制中为32bits=4Bytes,题目里的256MB=256*2**20Bytes。所以化完单位后直接相除等于64*2**20Bytes。endl也不用,浪费时间,用'\n'代替。其中2的20次方可以用(1<<20)表示。蓝桥杯中一般不用pow函数有误差或时间长。内容提取:1个字节等于8个比特。一张图看懂16进制转换。
2023-12-23 22:30:29 618 4
原创 动态规划c++
之后对钱和面值开始遍历,如果钱数大于面值(证明可以找零钱),那么方法数= 面值是前边一种,钱数不变的的时候的方法 + 面值不变,钱数=钱数-面值 时的方法(dp[i][j] = dp[i - 1][j] + dp[i][j - penny[i]])。因为,对于某种面值我们有两种情况,用或不用,不用就是dp[i - 1][j] ,用了,那么此时的钱就必须先减取面值,j-penny[i],所以是dp[i][j - penny[i]]。设dp[i][j]代表钱为j,i纸币的面值时共有的找钱方法。
2023-12-19 10:07:41 412 1
原创 指针与一,二维数组
一,指针与一维数组一,指针与一维数组①以下标的形式访问:a[i]或p[i]i=0, 1, 2, 3, 4 //用指针变量名p代替数组名②以指针的形式(a+i)或(p+i)1,3,
2023-12-18 22:54:27 398
原创 c++基础知识,pi,字符,素数,排序,嵌套。
1,引用函数库#,然后因为arccos(-1)=pi,所以定义#define pi acos(-1)2,atan()作用:用来求π的值:atan(1)=π/4 π=4.0*atan(1)注:4*也可以。
2023-12-15 17:22:23 281
原创 c++期末题目
7,若有以下函数调用语句:fun(a+b,(x,y),fun(n+k,d,(a,b)));3,参数的传递方式为值传递时,对形参和实参的要求正确的是_____B___。A、函数定义时,形参一直占用存储空间B、实参可以是常量、变量或表达式。B、带参宏在展开时,先求出实参表达式的值,然后再代入形参,并运算求值。C、形参可以是常量、变量或表达式D、形参和实参类型和个数都可以不同。8,以下程序程序执行后的输出结果是___1,0,2,0___。A、自动类型B、静态类型 C、寄存器类型D、外部类型。
2023-12-14 10:58:33 588
原创 引用c++
结论:c++推荐引用技术,因为语法方便,引用本质是指针常量,并且所有的指针操作编译器都帮我们做了。在函数形参列表中,可以加cost修饰形参,防止形参改变实参。作用:函数传参时,可以利用引用的技术让形参修饰实参。本质:引用的本质在c++内部实现是一个指针常量。地址传递、引用传递的形参会修饰实参,值传递不会。作用:常量引用主要用来修饰形参,防止误操作。作用:引用是可以作为函数的返回值存在的。引用在初始化后,不可以改变。注意:不要返回局部变量引用。2.4引用做函数的返回值。2.1引用的基本使用。
2023-12-08 20:34:04 129
原创 c++程序的内存模型
c++程序在执行时,将内存大方向分为4个区域1)代码区:存放函数体的二进制代码,由操作系统进行管理的2)全局区:存放全局变量和静态变量以及常亮3)栈区:由编译器自动分配释放,存放函数的参数值局部变量等4)堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收内存四区存在的意义不同区域存放的数据,赋予不同的生命周期,给我们更大的灵活编程。
2023-12-02 12:14:06 144
原创 通讯录管理系统c++
功能描述:用户选择功能界面菜单界面效果如下图:步骤:封装函数显示界面 如void showMenu()在main函数中调用封装好的函数。
2023-11-16 18:24:14 205 1
原创 8.8 结构体案例c+++
设计学生和老师的结构体,其中在老师的结构体中,有老师姓名和一个存放5名学生的数组作为成员,学生的成员有姓名、考试分数,创建数组存放3名老师,通过函数给每个老师及所带的学生赋值,最终打印出老师数据以及老师所带的学生数据。创建数组,函数,嵌套结构体,随机数种子都有。
2023-11-11 22:11:30 38 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人