TZOJ 5347: 数据结构实验:删除链表元素
描述
完成链表的创建、元素查找和删除等操作。
部分代码已经给出,请补充完整,提交时请勿包含已经给出的代码。
void PrintLinkList(Node *head)
{
int flag = 0;
Node *p = head->next, *q;
while(p)
{
if(flag)
printf(" ");
flag = 1;
printf("%d", p->data);
q = p;
p = p->next;
free(q);
}
free(head);
} int main()
{
int n, x;
scanf("%d", &n);
Node *head = CreateLinkList(n);
scanf("%d", &x);
Node *p = Find(head, x);
Delete(p);
PrintLinkList(head);
return 0;
}
输入
输入数据第一行为n,表示链表元素个数,第二行为n个整数,表示节点元素值(所有元素值不相等)。
第三行为删除的元素值,一定存在于链表中。
输出
输出删除后的链表元素,每个元素值之间用一个空格隔开。
样例输入
5
1 2 3 4 5
3
样例输出
1 2 4 5
#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>
typedef struct Node{
int data;
struct Node *next;
}Node;
Node* CreateLinkList(int n)
{
Node *head,*p;
head=(Node*)malloc(sizeof(Node));
head->next=NULL;
p=head;
while(n--)
{
int a;
scanf("%d",&a);
p->next=(Node*)malloc(sizeof(Node));
p=p->next;
p->data=a;
p->next=NULL;
}
return head;
}
Node* Find(Node *head,int n)
{
Node *p;
p=head;
while(p->next->data!=n)
{
p=p->next;
}
return p;
}
void Delete(Node *p)
{
Node *q;
q=(Node*)malloc(sizeof(Node));
q->next=(Node*)malloc(sizeof(Node));
q=p->next;
p->next=q->next;
free(q);
}
void PrintLinkList(Node *head)
{
int flag = ;
Node *p = head->next, *q;
while(p)
{
if(flag)
printf(" ");
flag = ;
printf("%d", p->data);
q = p;
p = p->next;
free(q);
}
free(head);
} int main()
{
int n, x;
scanf("%d", &n);
Node *head = CreateLinkList(n);
scanf("%d", &x);
Node *p = Find(head, x);
Delete(p);
PrintLinkList(head);
return ;
}
TZOJ 5347: 数据结构实验:删除链表元素的更多相关文章
- SDUT OJ 数据结构实验之链表七:单链表中重复元素的删除
数据结构实验之链表七:单链表中重复元素的删除 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem ...
- SDUT-2122_数据结构实验之链表七:单链表中重复元素的删除
数据结构实验之链表七:单链表中重复元素的删除 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 按照数据输入的相反顺序(逆 ...
- SDUT OJ 数据结构实验之链表五:单链表的拆分
数据结构实验之链表五:单链表的拆分 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Descr ...
- SDUT-2120_数据结构实验之链表五:单链表的拆分
数据结构实验之链表五:单链表的拆分 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 输入N个整数顺序建立一个单链表,将该 ...
- SDUT OJ 数据结构实验之链表九:双向链表
数据结构实验之链表九:双向链表 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Descrip ...
- SDUT OJ 数据结构实验之链表八:Farey序列
数据结构实验之链表八:Farey序列 Time Limit: 10 ms Memory Limit: 600 KiB Submit Statistic Discuss Problem Descript ...
- SDUT OJ 数据结构实验之链表六:有序链表的建立
数据结构实验之链表六:有序链表的建立 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Desc ...
- SDUT OJ 数据结构实验之链表四:有序链表的归并
数据结构实验之链表四:有序链表的归并 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Desc ...
- SDUT OJ 数据结构实验之链表三:链表的逆置
数据结构实验之链表三:链表的逆置 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Descri ...
随机推荐
- jsp中的路径问题
在学jsp的时候我每次都遇到路径的问题,每次都不能够说100%的把这搞定,这让我很烦恼,今天下午花了点时间来把路径问题整理了下. 一:首先我们在加载项目(我的项目名称是FinalExam)是的路径是h ...
- POST提交数据太大
2018.4.8号更新 其实后来最终的解决方案是修改服务器的配置文件. POST数据按道理说是没有大小限制的,只是取决于浏览器或服务器的配置,tomcat的解决方式参考方案2. ----------- ...
- 【poj3294-不小于k个字符串中最长公共子串】后缀数组
1.注意每两个串之间的连接符要不一样. 2.分组的时候要注意最后一组啊!又漏了! 3.开数组要考虑连接符的数量.100010是不够的至少要101000. #include<cstdio> ...
- 网络流专题练习Day2
04/17 目前做了:题 由于目前六道都是1A感觉非常爽... BZOJ1412: [ZJOI2009]狼和羊的故事 “狼爱上羊啊爱的疯狂,谁让他们真爱了一场:狼爱上羊啊并不荒唐,他们说有爱就有方向 ...
- shell整数加法
http://blog.csdn.net/ll_0520/article/details/5959577 #plus #!/bin/sh let a=$1+$2 b=$[$1+$2] ((c=$1+$ ...
- Kuangbin带你飞 AC自动机
模板: struct Ac_Automation { int ch[MAXNNODE][SIGMA_SIZE]; int val[MAXNNODE]; int fail[MAXNNODE],last[ ...
- mysql索引语法及示例
注:本篇文章是对菜鸟教程中的mysql索引(http://www.runoob.com/mysql/mysql-index.html)的翻译版本:添加了示例,便于理解: 索引分单列索引和组合索引.单列 ...
- 【 总结 】linux中test命令详解
test命令在bash shell脚本中经常以中括号([])的形式出现,而且在脚本中使用字母来表示比符号表示更专业,出错率更低. 测试标志 代表意义 文件名.文件类型 -e 该文件名是否存在 -f 该 ...
- echarts地图自定义任意区域
这里可以直接在地图上框选区域,右侧会自动生成geojson
- Tortoise svn 冲突解决主要办法
Tortoise svn 冲突解决主要办法 1.先备份自己的修改文件后,然后revert自己的更新内容,然后提交,再以更新后的代码为基准,将备份的代码移入进来.在这种方式下不需要使用svn resol ...