• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

twilight0966

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

链表

目录
  • 单链表插入
  • 单链表删除
  • C语言

单链表插入

InsertNode(LinkedList, position, data):

  1. 创建一个新节点NewNode,设置其数据为data
  2. 如果position为0:
    a. 将NewNode的next指向当前链表的头节点
    b. 将当前链表的头节点指向NewNode
    否则:
    a. 找到位置为position-1的节点,记为prevNode
    b. 将NewNode的next指向prevNode的next节点
    c. 将prevNode的next指向NewNode

单链表删除

DeleteNode(LinkedList, position):

  1. 如果链表为空:
    a. 返回错误,链表为空
  2. 如果position为0:
    a. 将链表的头节点指向头节点的下一个节点
    否则:
    a. 找到位置为position-1的节点,记为prevNode
    b. 如果prevNode为NULL或者prevNode的next为NULL:
    i. 返回错误,无法删除节点
    c. 将要删除的节点记为toBeDeleted,即prevNode的下一个节点
    d. 将prevNode的next指向toBeDeleted的下一个节点

C语言

在AI的帮助下完成的
照片见附件

posted on 2023-11-12 18:08  20231301周子昂  阅读(18)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3