剑指offer--面试题13:在O(1)时间删除链表结点
来源:互联网 发布:淘宝商品管理 编辑:程序博客网 时间:2024/05/18 01:07
#include<stdio.h>#include<malloc.h>typedef struct node{int data;struct node *next;}Node,*LinkList;LinkList Create_Tail_LinkList(LinkList &L,int length) //尾插法建单链表{Node * s,*r;L=(LinkList)malloc(sizeof(Node));L->next=NULL;r=L; //尾指针for(int i=0;i<length;++i){s=(Node*)malloc(sizeof(Node));scanf("%d",&s->data );r->next =s;r=s;}r->next =NULL;return L;}void Print_LinkList(LinkList L){Node *p;p=L->next;if(!p)printf("空表!\n");while(p){printf("%d ",p->data);p=p->next;}printf("\n");}Node* Find_Node(LinkList L, int data){Node *p;p=L->next;while(p&&p->data!=data){p=p->next;}return p;}void Delete(LinkList &L,Node* p){if(!L->next ||!p)return ;if(p->next !=NULL){Node *p_next=p->next;p->data =p_next->data ;p->next =p_next->next ;free(p_next);}else if(L->next ==p){L->next =NULL;free(p);}else{Node *q=L->next ;while(q->next !=p){q=q->next ;}q->next =p->next ;free(p);}}void main(){LinkList L;Node *p;int length;int data;printf("请输入表长:");scanf("%d",&length);L=Create_Tail_LinkList(L,length);Print_LinkList(L);printf("请输入删除的结点:");scanf("%d",&data);p=Find_Node(L,data);Delete(L,p);Print_LinkList(L);}
0 0
- 【剑指Offer学习】【面试题13 :在O(1)时间删除链表结点】
- 剑指offer 面试题13:在O(1)时间删除链表结点(C++版)
- 剑指offer-面试题 13:在 O( 1)时间删除链表结点
- 剑指offer--面试题13:在O(1)时间删除链表结点
- 剑指Offer学习之面试题13 :在O(1)时间删除链表结点
- [剑指offer][面试题13]在O(1)时间删除链表结点
- 《剑指Offer》面试题13:在O(1)时间删除链表结点
- 《剑指Offer》学习笔记--面试题13:在O(1)时间删除链表结点
- 剑指offer--面试题13:在O(1)时间删除链表结点--Java实现
- 剑指offer-面试题13:在O(1)时间删除链表结点
- 剑指offer之面试题13在O(1)时间删除链表结点
- 剑指Offer----面试题13:在O(1)时间删除链表结点
- 剑指Offer:面试题13——在O(1)时间删除链表结点
- 剑指offer面试题13:在O(1)时间删除链表结点
- 剑指offer——面试题13:在O(1)时间删除链表结点
- 剑指Offer之面试题13:在O(1)时间删除链表结点
- 剑指offer-面试题13-在O(1)时间删除链表结点
- 剑指Offer系列-面试题13:在O(1)时间删除链表结点
- web2——景点主页
- 交叉验证(cross_validation)
- POJ 1029 False coin 笔记 模拟
- dfs-hdu2782
- Spring Boot集成CKFinder-优化
- 剑指offer--面试题13:在O(1)时间删除链表结点
- HTTP协议之基本认证
- 零xml配置Spring MVC文件上传
- jQuery选择器实例列表
- ZOJ 1027 Human Gene Functions(最长公共子序列)
- mybatis3--3.mybatis开发dao的方法
- 【51单片机】常用波特率初值表
- LeetCode算法题——22. Generate Parentheses
- Java 多线程(一)——多线程概述