华为oj 从单向链表中删除指定值的节点
来源:互联网 发布:hadoop 数据抓取 编辑:程序博客网 时间:2024/05/24 05:39
系统显示结果错误,但是自己测试的例子得到的结果是正确的
2 5 4 1 是最后的结果
#include<iostream>#include<stdlib.h>using namespace std;struct ListNode{int num;ListNode *next;}; extern void printLink(ListNode *head);void buildLink(ListNode* head,int sum){int value,position;while(--sum){ cin>>value>>position; //cout<<value<<position<<endl; ListNode *p = head; while(p!= NULL) { if(p->num == position) { //插入到p的后面 ListNode *temp = (ListNode*)malloc(sizeof(ListNode)); temp->num = value; temp->next = p->next; p->next = temp; break; } else p = p->next; } } //printLink(head);}void deleteLink(ListNode* list,int devalue){ ListNode *p = list->next; ListNode *q = list; while(p!= NULL) { if(p->num == devalue) { q->next = p->next; break; } else { q = p; p = p->next; } } printLink(list->next);}void printLink(ListNode* head){ListNode *p = head; while(p->next) { cout<<p->num<<" "; p = p->next; } cout<<p->num<<endl;}int main(){ ListNode *head = (ListNode*)malloc(sizeof(ListNode)); ListNode *list = (ListNode*)malloc(sizeof(ListNode)); head->next = NULL; list->next = head; int sum = 0; cin>>sum; //cout<<sum<<endl; cin>>head->num; //cout<<head->num; buildLink(head,sum); int devalue; cin>>devalue; deleteLink(list,devalue);return 0;}
0 0
- 华为OJ:从单向链表中删除指定值的节点
- 华为oj 从单向链表中删除指定值的节点
- 华为OJ从单向链表中删除指定值的节点
- 华为OJ(从单向链表中删除指定值的节点)
- 【华为OJ】【093-从单向链表中删除指定值的节点】
- 华为OJ——从单向链表中删除指定值的节点
- 华为OJ——从单向链表中删除指定值的节点
- OJ-------从单向链表中删除指定节点
- 从单向链表中删除指定值的节点(OJ 不用看这题)
- 从单向链表中删除指定值的节点
- 从单向链表中删除指定值的节点
- [编程题]从单向链表中删除指定值的节点
- 24.从单向链表中删除指定值的节点
- 华为机试-从单链表中删除指定值的节点
- 删除单向链表的指定节点
- 从单向链表中删除指定值的节点(格式控制真坑,末尾要打印空格,样例输出有错误)
- 华为OJ 向升序单向链表中插入一个节点
- 单向链表(二) 删除指定位置的节点
- php\symfony3 学习记录(三) 路由和控制器
- 趣味算法-0的迷宫
- 算法代码实现之归并排序,Golang(Go语言)实现,自顶向下与自底向上两种方式
- Data Structures And Problem Solving Using Java (Fourth Edition)中译版(Java 常见异常篇)
- jQuery学习笔记01
- 华为oj 从单向链表中删除指定值的节点
- tableView 取消选中状态
- LA 3942 背单词 trie树+dp
- this指向
- Android手电筒介绍
- 随堂笔记160228表达式
- uva10304 区间DP
- 公司这个月应该发我N万元工资
- 常用的工具类及方法(不断更新)