【算法】算法知识点归纳

1.if(flag)等价于.if(flag!=0),简写要弄清含义。

2.std::ios::sync_with_stdio(false); 用这个语句,取消cin,cout与stdio的同步,注意不要打错了。

3.在循环中尽量不要把循环变量直接赋值给某一变量,容易出错。循环中需要判定的变量注意每次是否要初始化。

4.题目中要求输入一行字符串并且最后以换行符结束用getline(cin,s)。

5.对于全局变量最大值N设置为const常量更安全

6.类型转换:string 转int(stringstream可以吞下任何类型,根据实际需要吐出不同的类型。)

        stringstream x;
	s[0] = string("1");
	s[1] = string("2");
	s[2] = string("4");
	s[3] = string("168819");
	x<<s[3];
	x>>n;
	cout<<n;

7.斐波那契递归方法的时间复杂度是O(2^n),空间复杂度是O(n)。

例如计算f(8)过程,空间复杂度O(n)是因为操作系统的压栈,最多就n个函数,所以是n个空间。

8.   char a1[] ="123";a 1初始化的是一个字符串,字符串中包含一个‘/0’,存储单元为4;

      char a1[] ={'1','2','3'};存储单元为3;

9.深拷贝是在堆中单独开辟一块空间,把一个对象的属性值拷贝过来,两者互不影响。

   浅拷贝是把对象的引用值拷贝过来,两者同时变化。

10.用vector容器创建一个m*n大小的二维数组:

vector<vector<int>> a(m);
for(i=0;i<m;i++){
   a[i].resize(n);
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

白驹_过隙

听说打赏的都进了福布斯排行榜

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值