数据结构上机测试2-2:单链表操作B
来源:互联网 发布:平板淘宝怎么换皮肤 编辑:程序博客网 时间:2024/06/16 18:40
Problem Description按照数据输入的相反顺序(逆位序)建立一个单链表,并将单链表中重复的元素删除(值相同的元素只保留最后输入的一个)。 Input第一行输入元素个数n;第二行输入n个整数。 Output第一行输出初始链表元素个数;第二行输出按照逆位序所建立的初始链表;第三行输出删除重复元素后的单链表元素个数;第四行输出删除重复元素后的单链表。 Example Input1021 30 14 55 32 63 11 30 55 30Example Output1030 55 30 11 63 32 55 14 30 21730 55 11 63 32 14 21Hint
#include<stdio.h>#include<stdlib.h>#include<string.h>#include<iostream>using namespace std;int n;struct node{int data;struct node *next;};node *creat(int n){node *head,*p;head=(node *)malloc(sizeof(node));head->next=NULL;for(int i=0;i<n;i++){p=(node *)malloc(sizeof(node));scanf("%d",&p->data);p->next=head->next;head->next=p;}return head;}node *del(node *head){node *p=head->next;while(p!=NULL){node *q=p;node *k=q->next;while(k!=NULL){if(k->data==p->data){q->next=k->next;n--;}elseq=q->next;k=q->next;}p=p->next;}return head;}void print(node *head){node *p=head->next;while(p!=NULL){if(p->next==NULL)cout<<p->data<<endl;elsecout<<p->data<<" ";p=p->next;} }int main(){cin>>n;node *head=NULL;head=creat(n);cout<<n<<endl;print(head);head=del(head);cout<<n<<endl;print(head);return 0;}
阅读全文
0 0
- 数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- 【1139】数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- SDUT1139数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- SDUTACM数据结构上机测试2-2:单链表操作B
- 数据结构上机测试2-2:单链表操作B
- sdut oj1139 数据结构上机测试2-2单链表操作B
- 数据结构上机测试2-2:单链表操作B
- 文章标题
- JZOJ2017.08.08 C组
- Spring-data-JPA生成JPQL语句方法名称中支持的关键字
- git 提交到远程另外仓库
- linux学习常用命令
- 数据结构上机测试2-2:单链表操作B
- Caffe学习:pycaffe利用caffemodel进行分类=>批处理
- Ecology8二次开发:HTML表单隐藏行与显示行
- 99乘法表
- java线程笔记
- python3 mysql数据导出到excel
- vimrc配置文件
- 性能测试场景设计方法(教科书版)
- linux 数据库文件迁移步骤详解