7/25一边学习一边摸鱼

八股文:

        一个空类:默认构造函数   拷贝构造函数    赋值运算符  析构函数

        构造函数有几类:默认构造函数、 初始化构造函数、拷贝构造函数、移动构造函数

移动构造函数。用于将其他类型的变量,隐式转换为本类对象

什么地方会实践 深拷贝 : :深拷贝的拷贝构造函数和赋值运算符

为什么基类必须虚析构 ? 虚函数 用于  将基类和派生类连接,实现 多态 ,析构函数也需要 串联出来 。

析构顺序  派生类的构造函数  --> 成员类 析构函数 -->  父类构造函数  

类内成员变量: 引用——初始化必须在构造函数 初始化列表中进行  

const 本身就是 只读的含义  ,和成员函数结合起来,,能够牵涉的  两个部分 就是 ( const )成员变量   ( const )对象

刷题: 两道题

        链表的定义:要考虑到 构造实例化的情况

struct ListNode{
    int val;
    ListNode* next;
    ListNode(int x) : val(x), next(NULL) {}  // 节点的构造函数
}

链表-链表与数据性能对比

 移除链表中的元素;

        成功实现的代码中使用了,俩个链表指针,有些浪费,并且没有删除 已经移除掉的 元素

使用一个 ListNode* cur 和一个  ListNode temp 用来删除 移除掉的元素

链表中 虽然 插入/删除的时间复杂度 是 O(1),但是 找个这个对应该删除/插入元素的位置,还是需要遍历。

while( index--) 我这边思维上有个误区

就是   判断是否进入while 循环是 使用的 i 

但是进入while 循环体内后,使用的 i 是 已经 减 1 的结果  

index-- 执行的次数 就是 index 的大小

--index  执行的次数  是 index -1 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值