leetcode-2 两数相加(链表的头插法、尾插法、两个不同长度链表相加、减操作的处理方法)

1. 总结:链表的头插法、尾插法、两个不同长度链表相加、减操作的处理方法

注意LinkNode* r=new LinkNode;语句的位置,不放在循环里,放在一开头就出错了。。。

2. 链表的头插法: 

LinkNode *p=head;//这句话尤为重要,用p代替head。由于是浅拷贝,因此指向的是同一块内存,因此对p操作也能起到构建链表的效果,最后仍旧返回head即可
while(!=EOF){
    LinkNode* r=new LinkNode;//C中等同于malloc,这句话必须每次循环都声明一遍!!!
    cin>>num;
    r->val=num;
    //尾插法主要代码:
    p->next=r;
    p=r;
}
p->next=NULL;

3. 链表的尾插法:

LinkNode *p=head;//同理,浅拷贝,p和head指向一片内存
while(!=EOF){
    LinkNode *r=new LinkNode;
    cin>>num;
    r->val=num;
    //下面两句是头插法的主要代码
    r->next=p->next;
    p->next=r;
}
return head;

4. 两个不同长度链表相加、减操作的处理方法(遇到其他题目时的思想)

不同数组,字符串,链表。要对每一位操作,可以考虑补成一样长的数据,然后进行操作!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值