- 博客(5)
- 收藏
- 关注
原创 关于二维数组中的指针问题
例如,在一维数组中,num[]中,num是指该数组的地址,也是第一个元素的地址,*num是指num[0]的值。num+1是指第二个元素的地址,当然,这里是指逻辑地址(原因是方便程序员编写程序,假象若程序员每次都要考虑数据类型而修改“I"的值,效率将会大打折扣)。而二维数组可以视为是以一维数组为元素的数组,那么,在二维数组中,num[][]中的num可以表示第一个元素的地址,即第一行的行地址,*num是指num[0]的值,而在二维数组中,num[i]是指第i行的行地址。由此分析,不难分析下面程序的输出结果。
2023-02-07 20:11:35 116
原创 利用滑动窗口机制对动态规划问题算法的时间复杂度进行改进
输入一个长度为n的整型数组array,数组中的一个或连续多个整数组成一个子数组,子数组最小长度为1。求所有子数组的和的最大值。初始代码段如下,可以得知,该算法的时间复杂度和空间复杂度均为O(n)优化后的代码空间复杂度为O(1)
2023-02-07 16:02:40 123
原创 输入一个长度为n的整型数组array,数组中的一个或连续多个整数组成一个子数组,子数组最小长度为1。求所有子数组的和的最大值。
传统的方法都是从前往后遍历,这里通过从后往前遍历,简化了问题,每次遍历一个元素时只需判断该元素之后的元素值即可,一次遍历即可解决问题。
2023-02-07 15:30:41 388
原创 C++运算符重载
1.首先,我们先明确什么符号是不能重载的:sizeof、::、?:、.、.*这五类是不能重载的。我们也不能定义新的运算符。complex& complex::operator++()//用成员函数定义前缀++{ r++; i++; return *this;}complex complex::operator++(int dummy)//用成员函数定义后缀++{ complex oldval(*this); r++; i++; return oldval;}2.
2021-11-05 17:32:12 98
原创 C++使用函数模板显示有多个重载函数匹配无法运行
解决方法其实很简单: 注意到你无脑打出来的using namespace std; 你的错误就是从这里来的,重载函数全在这里面,所以会冲突,去掉这句就没问题了。
2021-11-05 15:13:58 1100
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人