数据结构实验之链表七:单链表中重复元素的删除
来源:互联网 发布:linux就该这么学书籍 编辑:程序博客网 时间:2024/06/15 06:50
数据结构实验之链表七:单链表中重复元素的删除
Time Limit: 1000MS Memory Limit: 65536KB
Submit Statistic
Problem Description
按照数据输入的相反顺序(逆位序)建立一个单链表,并将单链表中重复的元素删除(值相同的元素只保留最后输入的一个)。
Input
第一行输入元素个数 n (1 <= n <= 15);
第二行输入 n 个整数,保证在 int 范围内。
Output
第一行输出初始链表元素个数;
第二行输出按照逆位序所建立的初始链表;
第三行输出删除重复元素后的单链表元素个数;
第四行输出删除重复元素后的单链表。
Example Input
1021 30 14 55 32 63 11 30 55 30
Example Output
1030 55 30 11 63 32 55 14 30 21730 55 11 63 32 14 21
一般的只有两个相同元素的情况较为简单,如果有三个或是三个以上的相同元素,在每一个删除完成时都要再次查询还有没有与当前的元素重复的。
#include<stdio.h>#include<stdlib.h>typedef struct node{ int data; struct node *next;}*linkList;int count = 0;void creatList(linkList &L,int n){ struct node *p; L =new node; L->next = NULL; for(int i = 0; i < n; i++){ p = (struct node*)malloc(sizeof(struct node)); scanf("%d", &p->data); p->next = L->next; L->next = p; }};void outputData(linkList &L){struct node *p;p = L->next; while(p){ if(p->next == NULL) printf("%d\n", p->data); else printf("%d ", p->data); p = p->next; }}void delete_data(linkList &L){struct node *p, *q, *k; p = L; while(p){ k = p; q = k->next; while(q){ if(q->data == p->data){ k->next = q->next; free(q); count--; q = k->next; } else{ k = q; q = k->next; } } p = p->next; }}int main(){ int n; scanf("%d", &n); count = n; linkList L; creatList(L, n); printf("%d\n", n); outputData(L); delete_data(L); printf("%d\n", count); outputData(L); return 0;}
阅读全文
0 0
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- SDUToj2122数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- 数据结构实验之链表七:单链表中重复元素的删除
- python的numpy库
- 关于驱动开发第一篇 内核编译(上)
- Gson在java对象和json字符串之间转换
- 5. Longest Palindromic Substring
- dpdk 代码分析 : 内存初始化
- 数据结构实验之链表七:单链表中重复元素的删除
- 自然语言处理 怎么获得数据集 中文语料集?
- ftp文件上传功能实现
- 设计模式的六大原则
- 1.2多媒体系统的组成
- C++STL之string
- template
- 剑指Offer--15.反转链表
- 百度笔试第一题