- 博客(56)
- 收藏
- 关注
原创 C++知识点总览
在C++语法上来看,引用是给变量起了个别名,不占用空间引用是给变量起别名,那前提肯定得有实体变量引用是给变量起别名,给空起了个别名没意义在看一下第二个例子例子2int a;int b;//合法的Student s1;//非法的return 0;int a;int b;//合法的//合法的Student s1;//合法的return 0;
2024-03-22 12:36:31 873
原创 22.动态规划
** 01 背包的滚动数组优化,自己转移给自己* 由于是自己转移给自己,如果前面的先被修改了后面的就都错了* */cin>>m>>n;i<=n;i++){i<=n;
2024-03-03 15:52:02 321
原创 20.图
/标记数组,用来标记已经入栈过的顶点//起始点入栈,入栈就标记while(!stk.pop();//把栈顶顶点所有的邻接点入栈//邻接矩阵i<=n;i++){//入栈过的就不能再搜了if(!//邻接表i++){//入栈过的就不能再搜了if(!cin>>n>>m;int s;cin>>s;i<=m;cin>>u>>v;DFS(s);return 0;
2024-03-03 15:50:48 863
原创 12.STL集合(set)
因为它默认对数据进行去重加升序排序,所以它排序的时间复杂度为O(nlogn)在set种查找相当于在树中查找,它的时间复杂度为logn。
2024-02-21 20:10:52 355
原创 11.比赛2
a=b;b=c;return a;//signed main可以替代为int mainint a,b;cin>>a>>b;return 0;CSP2019]公交换乘struct A{bool used;A a[N];//优惠卷的自定义类型数组-->手写队列cin>>n;if(opt==0){//乘地铁//优惠卷的价格//优惠卷的过期时间tail++;ans+=price;//乘地铁没有优惠卷所以必须要付钱。
2024-02-21 20:10:18 313
原创 06.栈习题
char ch;cin >> num;while (cin >> ch >> num) {//一个字符一个数字的输入规律,开始循环if (ch == '+')//遇到+就入栈else if (ch == '*') {//遇到*就计算while (!stk.empty()) {//最后栈里面的累加求和stk.pop();return 0;
2024-02-21 20:06:33 364
原创 04.结构体和结构体数组
int id;stu s[100];int n;//按学号升序排序,学号相等的按成绩比elsecin>>n;i<=n;i++){//没有缺省的默认升序排序,因为自定义类型需要重写比较规则i<=n;i++){
2024-02-21 20:05:11 317
原创 01循环算法
bool cmp(int left,int right){//回调函数充当排序规则cin>>n;i<=n;i++){i<=n;i++){
2024-01-13 17:54:09 399
原创 C++笔记
在C++语法上来看,引用是给变量起了个别名,不占用空间引用是给变量起别名,那前提肯定得有实体变量引用是给变量起别名,给空起了个别名没意义在看一下第二个例子例子2int a;int b;//合法的Student s1;//非法的return 0;int a;int b;//合法的//合法的Student s1;//合法的return 0;
2024-01-13 17:49:49 1165
原创 DAY17
???????????????——————————————————————————————————————-——————————————
2023-12-25 15:52:59 308
原创 DAY16
首先无论是深拷贝还是浅拷贝都是一个已经存在的对象去初始化一个新的对象,只不过浅拷贝只是一个简单的传值的过程,如果要是有指针类型的成员变量的话,它也是穿值,这个值是地址,拷贝对象与被拷贝对象的成员变量指向同一块堆区空间,会出现很多的隐患,比如对象销毁的时候会释放成员变量指向的堆区空间,这样的话同一块堆区空间被释放了俩次肯定会出现问题。而深拷贝在值传递的基础上加上了给被被拷贝对象所指重新开辟空间的功能,避免了来个不同对象的指针类型成员变量指向同一块空间的。
2023-12-25 13:25:51 330
原创 DAY13
A() {cout << "调用构造函数" << endl;~A() {cout << "调用析构函数" << endl;int b;int c;A s;s.d = 1;return 0;
2023-12-23 13:06:20 341
原创 运算符重载
可以少传递一个参数int length;int width;int height;width = 0;height = 0;//成员函数重载加法运算符Box p;return p;//直接调用Box d;//调用重载运算符的函数return 0;
2023-12-22 15:18:10 329
原创 C++加法运算符的重载(operator)
int width;int height;width = 0;height = 0;//成员函数重载加法运算符Box p;return p;//直接调用Box d;//调用重载运算符的函数return 0;
2023-12-22 14:20:42 909
原创 DAY12
int a, b;return 0;注意宏函数的定义不一定后面非得没有分号,加上也可以,但是如果宏上加;了要注意调用宏函数进行文本替换时候别出错!
2023-12-21 15:58:33 342
原创 DAY11
因为静态成员变量属于类不属于对象,所以如果在类内初始化的话,岂不是每一个对象都拥有了一份静态成员变量,这不就矛盾了吗,所以静态成员变量必须类内声明,类外初始化类出现的目的就是多文件之间的交互,你把这个类static了,作用域变成本文件了,还咋交互了!
2023-12-20 21:17:13 978 1
原创 C++插入排序
i <= n;i++) {//第一个元素只有它自己,肯定有序,所以从第二个元素开始寻找插入位置//t存储的是无序第一个元素int j;//j代表的是有序最后一个元素j--) {//数组可能越界,所以要加j>=1去判断//把j位置先空出来//但是它还要执行j--操作,所以真正要插入的位置不是j而是j+1cin >> n;i <= n;
2023-12-18 16:44:29 343 1
原创 C++中的友元
告诉我想访问的那个类,我是你们这个类的我的好朋友,可以让我访问私有成员属性//私有的public:Building();//类内声明构造函数/*{this->bedroom = "卧室";this->sittingroom = "客厅";}*/this->bedroom = "卧室";this->sittingroom = "客厅";
2023-12-16 21:34:34 368 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人