随笔分类 - c++和数据结构
摘要:在C语音中代表指针,&代表地址 在C++中代表指针,而&代表引用,而*&代表指针引用 指针是一个变量(它的值是一个地址),而指针引用指的是这个变量的引用; 在C++中如果参数不是引用的话会调用参数对象的拷贝构造函数,所以如果有需求想改变指针所指的对象(换句话说,就是要改变指针里面存的地址),就要使用
阅读全文
摘要:分类 + 单链表 + 双链表 + 双向循环链表 基本操作 + 创建单链表 + 链表末尾插入元素data并返回 + 第i位置后插入元素data + 删除元素data 实验代码:
阅读全文
摘要:nullptr是c++11中的关键字,表示空指针 要区分nullptr和NULL,首先要明白NULL的含义: NULL是一个宏定义,在c和c++中的定义不同,c中NULL为(void )0,而c++中NULL为整数0 所以在c++中int p=NULL; 实际表示将指针P的值赋为0,而c++中当一个
阅读全文
摘要:链表头结点head 迭代(双指针) + 定义两个ListNode指针,pre指向现在的节点,cur指向前一个节点 + 每次让pre的next指向cur + 反转后,pre和cur往前循环 + 循环至链表末尾NULL 递归 + 递归到链表最后一个结点,该结点就是反转后的头结点,作为返回对象p + 每次
阅读全文
摘要:+ 内建函数中i++和++i加1的步骤不一样,但效率一样 + 自定义的类而言,++i效率更高,因为前缀式(++i)可以返回对象的引用,而后缀式(i++)必须产生一个临时对象保存更改前对象的值并返回(实现过自定义类型++运算符定义的就知道),所以导致在大对象的时候产生了较大的复制开销,引起效率降低,因
阅读全文
摘要:指针 + 数组nums nums 0x61fe14 num[0] 1 &nums 0x61fe14 nums 1 函数的数组参数 + 数组被作为参数传递时会退化为指针,如果用sizeof得到的实际上只是指针占据的空间,无法得到数组的长度。 直接在函数体中用sizeof的结果 + 加上数组引用,这里数
阅读全文