Problem A: 逆置线性表(线性表)

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 228   Solved: 118
[ Submit][ Status][ Web Board]

Description

(线性表)请写一个算法将顺序存储结构的线性表(a1...an)逆置为(an...a1)。

Input

输入长度n:5

输入数据:1 2 3 4 5

Output

5 4 3 2 1

Sample Input

5
7 8 9 10 11 

Sample Output

11 10 9 8 7 

HINT

逆置是数据结构中的题,类似数组中的逆置,即头尾互换。这里大家可以先用逆序,即输出时倒序输出,以后再用逆置做。

#include <iostream>
#define NULL 0
using namespace std;
struct student//定义结构体
{
int num;
student *next;//结构体中包含一个指向下一节点的指针
};
int n;//定义一个全局变量n;
student *creat(int m)//创建链表
{//定义函数,此函数带回一个指向链表头的指针
student *head,*p1,*p2;
p1=p2=new student;//开辟一个新单元,使p1,p2指向它
cin>>p1->num;//输入第一个结点
head=NULL;//链表为空的时候,
n=0;
while(p1->num!=NULL)
{
n=n+1;
if(n==1)head=p1;
else p2->next=p1;
p2=p1;
p1=new student;
if(n==m)//由m,n确定循环次数
{break;}
else
cin>>p1->num;
}
p2->next=NULL;//将最后一个指针指向“空”
return(head);//返回链表第一个结点的地址
}
void print(student *p){//链表的递归输出
if(p==NULL)//当p指向“空”时,结束,不返回任何值
return ;
print(p->next);//否则的话指针后移,指向下一个结点
cout<<p->num<<" ";//输出
}
int main()
{
int m;
cin>>m;
student *head;
student *creat(int);
void print(student *);
head=creat(m);
print(head);
return 0;
}

逆置线性表(线性表)相关推荐

  1. 5.顺序表和链表的最值,逆置和归并有序表

    文章目录 一.顺序表和链表的数据结构. 二.最值 2.1 使用顺序表 2.2 使用链表 三.逆置 3.1 顺序表的逆置 3.2 链表的逆置 四.归并(前提:有序的表) 4.1 顺序表实现归并有序表 4 ...

  2. 数据结构:顺序表的就地逆置

    顺序表的就地逆置 前言 用于个人作业记录 题目 Chapter 2, HLOJ 9503,例2.6.1 顺序表的就地逆置 试写一算法,实现顺序表的就地逆置,即利用原表的存储空间将线性表(a1,a2,- ...

  3. 【顺序表】顺序表的就地逆置

    编写算法实现顺序表的就地逆置,即利用原顺序表的存储单位把数据元素顺序反向,例如:1,5,6,9,8逆置为 8,9,6,5,1 题目分析: 就地逆置,就是指借用顺序表自身实现顺序逆置,不借助其他线性表. ...

  4. 数据结构趣题——顺序表就地逆置

    利用原表的存储空间将顺序表(a1,a2,--,an)逆置为(an,an-1,---a1). 1: #include <stdio.h> 2: #include <stdlib.h&g ...

  5. SWUST OJ#942 逆置顺序表

    目录 题目 思路 代码 数据结构 STL 仿STL 题目 建立长度为n的顺序表,然后将表中的数据元素逆置,即若表中原来的数据元素序列为(a0,a1,a2,-,an),则逆置后的数据元素序列为(an,a ...

  6. 链表基础操作及其逆置

    纠结了很久的一道链表题.果然我数据结构学得好渣.纠结了大约两个星期.最后提交作业的时间都截止了,还没交,再交的时候过期了,交不了了.只好跟老师说声,然后她又改了时间. 最后总结出了是我的指针和结构体学 ...

  7. java实现单链表就地逆置,单链表的就地逆置讲解

    { List *q; List *p = L->next; L -> next = NULL; //单链表就地逆置 while (p != NULL) { q = p -> next ...

  8. c语言借助栈单链表逆置,借助栈实现单链表逆置--数据结构

    标题: 借助栈实现单链表逆置 时 限: 1000 ms 内存限制: 10000 K 总时限: 3000 ms 描述: 用链式存储实现栈的初始化.入栈.出栈.取栈顶.判栈空等操作,在主函数中借助栈的基本 ...

  9. 用C++实现单链表的创建、逆置和输出 的两种方法

    http://blog.csdn.net/lfeng_coding/article/details/47300563 题目描述:在已知单链表头节点的情况下,设计算法逆置单链表并输出 方法一:采用首先将 ...

最新文章

  1. R卡方检验(CHI-SQUARE TEST)
  2. HDU 6170-正则表达式
  3. POJ 3981.字符串替换
  4. HTML property 和 attribute 的区别
  5. java spring jdbc_Spring与JDBC支持
  6. (十四)【RecSys 2016】Personalized Recommendations using Knowledge Graphs: A Probabilistic【看不懂】
  7. r语言 运算符_R语言运算符
  8. 批处理结束某个进程_[MIT6.824-lab1] 批处理算法模型MapReduce
  9. android 修改系统参数设置,Android获取与设置系统环境变量的方法指南
  10. 如何安装JAVASE平台
  11. 如何免费下载百度文库、豆丁网等网站的文档
  12. java求1到20的阶乘
  13. Spring bean的作用域有哪些?
  14. 一份很棒的外设驱动库(基于STM32F4)
  15. 台式电脑显示无法连接服务器,台式电脑无法连接网络怎么办
  16. 【原创】从文华财经下载数据并且分析每个期货品种的贝塔值-云金杞
  17. 【转载】100个思维模型(不一定都适用,各取所需)
  18. 捋一捋Unified Language Model Pre-training for Natural Language Understanding and Generation
  19. 《Ivor Horton's Beginning Java》 Chapter1-7 读书笔记
  20. MT7628K eCos开发入门

热门文章

  1. 使用数据库连接池建立数据库连接
  2. beyond compare java_文件内容比较工具---Text compare Beyond compare
  3. ubuntu下beyond compare的使用
  4. C\C++中strcat()函数
  5. Node-RED中通过node-red-ui-webcam节点实现访问摄像头并截取照片预览
  6. 华盛证券软件测试工程师工资,【恒生电子工资】软件测试工程师待遇-看准网...
  7. 【H5】 React 微信H5调试等随记
  8. 图像处理算法python_图像处理——饱和度调整算法(python语言)
  9. TinyPng批量压缩图片
  10. 交易日九点到九点半的挂单撤单以及价格的一点心得