YTU 2620: B 链表操作
2620: B 链表操作
时间限制: 1 Sec 内存限制: 128 MB
提交: 418 解决: 261
题目描述
(1)编写一个函数createlink,用来建立一个动态链表(链表中的节点个数由参数count来控制)。
节点结构如下:
struct Node
{
int data;
Node * next;
};
函数createlink的声明如下:
Node * createlink(int count);
(2)编写一个函数printlink,用来遍历输出一个链表。
函数printlink的声明如下:
void printlink(Node * head);
(3) 在主程序中调用函数createlink来动态创建链表,然后调用printlink函数遍历输出链表节点数据。
主程序如下:(提交时不用提交主程序)
int main()
{
Node * head=NULL;
int n;
cin>>n;
head=createlink(n);
printlink(head);
return 0;
}
输入
输入要建立链表的节点个数
输入各个节点的数据
输出
输出链表中各个节点的数据
样例输入
4
1 2 3 4
样例输出
1 2 3 4
提示
提交时不用提交主程序,其他都要提交
迷失在幽谷中的鸟儿,独自飞翔在这偌大的天地间,却不知自己该飞往何方……
#include<iostream>
using namespace std;
struct Node
{
int data;
Node * next;
};
Node * createlink(int count)
{
Node *p=new Node;
if(count==0)
{
p->next=NULL;
return p;
}
cin>>p->data;
p->next=createlink(count-1);
return p;
}
void printlink(Node * head)
{
if(head!=NULL)cout<<head->data;
while(head->next->next!=NULL)
{
cout<<" "<<head->next->data;
head=head->next;
}
}
int main()
{
Node * head=NULL;
int n;
cin>>n;
head=createlink(n);
printlink(head);
return 0;
}
using namespace std;
struct Node
{
int data;
Node * next;
};
Node * createlink(int count)
{
Node *p=new Node;
if(count==0)
{
p->next=NULL;
return p;
}
cin>>p->data;
p->next=createlink(count-1);
return p;
}
void printlink(Node * head)
{
if(head!=NULL)cout<<head->data;
while(head->next->next!=NULL)
{
cout<<" "<<head->next->data;
head=head->next;
}
}
int main()
{
Node * head=NULL;
int n;
cin>>n;
head=createlink(n);
printlink(head);
return 0;
}
YTU 2620: B 链表操作的更多相关文章
- JAVA 链表操作:循环链表
主要分析示例: 一.循环链表简述 二.单链表循环链表 三.双链表循环链表 一.循环链表简述 循环链表即链表形成了一个循环的结构,尾节点不再指向NULL,而是指向头节点HEAD,此时判定链表的结束是尾节 ...
- 单链表操作B 分类: 链表 2015-06-07 12:42 15人阅读 评论(0) 收藏
数据结构上机测试2-2:单链表操作B TimeLimit: 1000ms Memory limit: 65536K 题目描述 按照数据输入的相反顺序(逆位序)建立一个单链表,并将单链表中重复的元素删除 ...
- C# 链表操作
关于链表操作,在C#当中微软已经提供了一个LinkedList<T>的数据结构,通过这个类提供的一系列方法就能够实现链表操作. 这里我提供一段代码,这是在论坛里面有人提问时给出的代码,它实 ...
- C语言,单链表操作(增删改查)(version 0.1)
这天要面试,提前把链表操作重新写了一遍.备份一下,以备不时之需. 希望有人能看到这篇代码,并指正. // File Name : list.h #include "stdafx.h" ...
- C语言链表操作模板(添加,删除,遍历,排序)
C语言链表操作模板,摘自郝斌的C语言视频教程,简单的修改成了纯C格式.当年照着视频学习的时候记录下来的,在使用的时候直接拿来修改修改修改能节约不少时间的. /********************* ...
- ZT C语言链表操作(新增单向链表的逆序建立)
这个不好懂,不如看 转贴:C语言链表基本操作http://www.cnblogs.com/jeanschen/p/3542668.html ZT 链表逆序http://www.cnblogs.com/ ...
- C#的链表操作[数据结构-线性表]
链式存储结构图解: 上图中,a1,是数据,紧跟着后面的d1是下一个节点的地址值.也就是一个节点的最后存储的是下一个节点的地址值,最后一个节点的存储的下一个地址值是null,代表链表结束. 1,定义链表 ...
- linux 内核的链表操作(好文不得不转)
以下全部来自于http://www.ibm.com/developerworks/cn/linux/kernel/l-chain/index.html 无任何个人意见. 本文详细分析了 2.6.x 内 ...
- 数据结构之 线性表---单链表操作A (删除链表中的指定元素)
数据结构上机测试2-1:单链表操作A Time Limit: 1000MS Memory limit: 4096K 题目描述 输入n个整数,先按照数据输入的顺序建立一个带头结点的单链表,再输入一个数据 ...
随机推荐
- 原生js实现中文时钟
零.寒暄 终于一个月可以更新两篇博客了,开心.昨天花了大概一天的时间玩了下github,基本的clone和push都搞定了,如果有和我一样的新手没调通的,大家可以交流. 另外,说个题外话,大家发现我的 ...
- WPF编程学习——布局
本文目录 1.布局简介 2.面板(Panel) 3.视图框(Viewbox) 4.滚动视图控件(ScrollViewer) 5.公共布局属性 1.布局简介 应用程序界面设计中,合理的元素布局至关重要, ...
- Base64编解码Android和ios的例子,补充JNI中的例子
1.在Android中java层提供了工具类:android.util.Base64; 里面都是静态方法,方便直接使用: 使用方法如下: // Base64 编码: byte [] encode = ...
- ATT GATT Profile
Bluetooth: ATT and GATT Bluetooth 4.0, which includes the Low Energy specification, brings two new c ...
- Sqli-labs less 65
Less-65 $id = '"'.$id.'"'; // Querry DB to get the correct output $sql="SELECT * FROM ...
- (转)c语言随机数srandom( )
转自:http://zhidao.baidu.com/question/334364810.html调用随机数函数 rand()() 的时候, 实际得到的这个随机数并不是绝对随机的,它是以一个初始值, ...
- HDU 1392 Surround the Trees (Graham求凸包周长)
题目链接 题意 : 让你找出最小的凸包周长 . 思路 : 用Graham求出凸包,然后对每条边求长即可. Graham详解 #include <stdio.h> #include < ...
- 初始JSON
SON是一种传输数据的格式(以对象为样板,本质上就是对象,但用途有区别,对象就是本地用的,json是用来传输的 JSON的两种静态方法: 1.JSON.parse(); string --> ...
- C#计算时间差值
/// <summary> /// 计算时间差值 /// </summary> /// <param name="DateTime1">< ...
- Android核心分析 之九Zygote Service
Zygote Service 在本章我们会接触到这两个单词: Zygote [生物] 受精卵, 接合子, 接合体 Spawn:产卵 通过这两个单词,我们就可以大体知道Zygote是干什么的了,就是叫老 ...