题目13:在O(1)时间删除链表结点
来源:互联网 发布:智能电视机软件下载 编辑:程序博客网 时间:2024/06/06 20:36
题目:给定单向链表的头指针和一个节点指针,定义一个函数在O(1)时间删除该结点。链表定义如下:
#include <iostream>using namespace std;struct ListNode{int m_value;ListNode*m_next;};void DeleteNode(ListNode**pListNode,ListNode*pToDelete){if(!pListNode||!pToDelete)return;//要删除的结点不是尾节点if(pToDelete->m_next!=NULL){ListNode *pNode=pToDelete->m_next;pToDelete->m_value=pNode->m_value;pToDelete->m_next=pNode->m_next;delete pNode;pNode=NULL;}//链表只有一个结点,删除头结点(也是尾节点)else if(*pListNode==pToDelete){delete pToDelete;pToDelete=NULL;*pListNode=NULL;}//删除结点是最后一个结点else{ListNode *pNode=*pListNode;while(pNode->m_next!=pToDelete){pNode=pNode->m_next;}pNode->m_next=NULL;delete pToDelete;pToDelete=NULL;}}
0 0
- 题目13:在O(1)时间删除链表结点
- 在O(1)平均时间删除链表结点 [# 13]
- 面试13:在O(1)时间删除链表结点
- 算法题目---在O(1)时间删除链表结点
- 在O(1)时间删除链表结点--总结
- 在O(1)时间删除链表结点
- 在O(1)时间删除链表结点
- 033-在O(1)时间删除链表结点
- 在O(1)时间删除链表结点
- 在O(1)平均时间删除链表结点
- 在O(1)时间删除链表结点--总结
- 在O(1)时间删除链表结点
- 在O(1)时间删除链表结点
- 在O(1)时间删除链表结点
- 在O(1)时间删除链表结点
- 在O(1)时间删除指定链表结点
- 在o(1)时间删除链表结点
- 在O(1)时间删除链表结点
- maven配置之settings.xml详解
- 在Action中使用Servlet API
- VS2015快捷键使用总结
- 极验验证——滑块拼图验证码
- C++ 函数模板和模板类
- 题目13:在O(1)时间删除链表结点
- QT中打印信息
- Android 利用Gradle实现app的环境分离
- Java 8增强的Map集合
- Rest API 开发 学习笔记
- uitextfield设置单行缩进
- 25条提高iOS App性能的技巧和诀窍 (部分内容重新翻译校对)
- 网易笔试
- 编程思维启蒙(Raptor)课程主页