C/C++ | 26-17 已知一个单向链表的头,删除其某一个结点的算法
来源:互联网 发布:微分销java源码 编辑:程序博客网 时间:2024/05/20 21:56
/*
已知一个单向链表的头,请写出删除其某一个结点的算法,
要求,先找到此结点,然后删除。
*/
#include <cstdio>#include <deque>#include <algorithm>#include <iterator>#include <stdio.h> #include <stdlib.h>#include <iostream>#include <string.h>#include <assert.h>using namespace std;typedef struct LNode{int data;struct LNode *next;}LNode;LNode *CreatLink(int num) // 构造{int i=1;LNode *head, *tail, *p;head = (LNode *)malloc(sizeof(LNode));tail = head;while (num--){p = (LNode *)malloc(sizeof(LNode));p->data = i;tail->next = p;tail = p;i++;}tail->next = NULL;return head;}LNode *FindLink(LNode *head,int X) //查找{assert( head != NULL);LNode *chick=head->next;while (chick != NULL){if (chick->data == X)return chick;elsechick = chick->next;}return NULL;}void DeleteLink(LNode *head, int X){assert(head != NULL);LNode *p;LNode *q;p=FindLink(head, X);q = p->next;p->data = q->data;p->next = q->next;free(q);}int main(){LNode *head = CreatLink(50);DeleteLink(head, 5);system("pause");return 0;}
阅读全文
0 0
- C/C++ | 26-17 已知一个单向链表的头,删除其某一个结点的算法
- 已知单向链表的头结点head,写一个函数把这个链表逆序 ( Intel)
- 已知单向链表的头结点head,写一个函数把这个链表逆序 ( Intel)
- C语言实现,无头结点不带环的单向链表的基本操作
- C语言实现链表之单向链表(六)删除头结点
- 有头结点的单向链表
- 题目:给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点。
- 给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点
- 13\给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点,
- 两种实现 无头结点单向链表 的插入、查找、删除
- 已知链表的头结点head,写一个函数把这个链表逆序
- 已知链表的头结点head,写一个函数把这个链表逆序
- C语言实现链表之单向链表(五)头结点前插入结点
- 单向链表指针头结点的修改
- (学习java)带有头结点的单向循环链表
- c语言---输入一个字符串,删除其中的某一个字符
- C语言有头结点链表的经典实现
- 链表的归并(无头结点,c语言)
- I2C总线协议的verilog实现
- 使用Tinker与极光推送实现Android热更新
- 【Java并发编程】活性
- Vertical line using XML drawable
- (poj 1062 昂贵的聘礼)<最短路建模>
- C/C++ | 26-17 已知一个单向链表的头,删除其某一个结点的算法
- Java基础面试题 (一)
- js基础提高(二)
- Spring注解方式进行事务管理
- LeetCode
- android selector.xml写法
- Android应用性能优化系列视图篇——恼人的分割线留白解决之道
- 实现在线看电子书
- c++中字符串反转的3种方法