链表的使用:删除结点(附链表实现学生相关信息的储存与输出)

(末尾实例)

(1)结点之间的链接方式如图:

 上一个结点的指针储存有下一个结点的地址,因而通过指针的方式实现两个结点的链接。

想要删除某个结点,只需要让上一个节点的指针指向要删除的结点的下一个结点即可。

但想要删除首个或是末个结点,则需要有另外的操作。

(2)、删除首个结点:

静态链表:令下一个结的指针为head,然后从head开始输出即可。

 动态链表:直接在输出时跳过本次循环即可:

 free(p):代表释放p指针所指的空间

(3)、删除中间结点:

静态链表:令上一个指针指向该结点的下一个地址,比如删除第二个结点,则令第一个结点的结构体类型指针指向第三个结点的地址。

 动态链表:利用循环,输出时跳过要删除的结点的那次循环即可;比如删除第二个结点,则输出时循环到第二个结点就跳过。因为不能先改变某个结点的指针值,所以可以定义一个整形变量,变量值随着循环次数的增加而增加,最后变量值与要删除的结点值相等即可跳过循环。

 (4)、删除最后一个结点

静态链表:令前一个结点的指针为空指针;

 动态链表:输出时循环完前一个即结束循环即可;例如删除第五个,则循环输出完第四个后用break结束循环即可;

2、链表实现学生相关信息的输入输出

静态链表

 动态链表:

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值