(a1,a2,a3,...,an-2,an-1,an)排列成(a1,an,a2,an-1,a3,an-2)
/*设线性表L=(a1,a2,a3,...,an-2,an-1,an)采用带头结点的单链表保存,链表的结构为data、next。请设计一个
空间复杂度为O(1)且时间上尽可能高效的算法,重新排列L中的各结点,得到线性表L'=(a1,an,a2,an-1,a3,an-2)。*/
#include<stdio.h>
#include<stdlib.h>
typedef int ElemType;
typedef struct LNode{ElemType data;struct LNode *next;
}LNode,*LinkList;LinkList tailInsertList(LinkList &L)
{ElemType x;L = (LinkList)malloc(sizeof(LNode));LNode *r=L;scanf("%d",&x);while(x!=9999){LNode *s = (LNode*)malloc(sizeof(LNode));s->data = x;r->next = s;r = s;scanf("%d",&x);}r->next = NULL;return L;
}LinkList operLink(LinkList &L)
{LNode *p=L,*q=L;LNode *r,*s;while(q->next){p = p->next;q = q->next;if(q->next)q = q->next;}//此时p为中间结点q = p->next; //q为后部首结点//将q为首的后部结点进行逆置p->next = NULL;while(q){r = q->next;q->next = p->next;p->next = q;q = r;}s = L->next;q = p->next;p->next = NULL;while(q){r = q->next;q->next = s->next;s->next = q;s = q->next;q = r;}return L;
} bool printList(LinkList L)
{LNode *p = L->next;while(p){printf("%d ",p->data);p = p->next;}printf("\n");return true;
}void main()
{ LinkList L;tailInsertList(L);operLink(L);printList(L);
}
(a1,a2,a3,...,an-2,an-1,an)排列成(a1,an,a2,an-1,a3,an-2)相关推荐
- 一道题:给定一整数序列A1,A2,...,An(可能有负数),求A1到An的一个自序列,使得Ai到Aj的和最大。例如:整数序列-2,11,-4,13,-5,2,-5,-3,12,-9的最大子序列为21
给定一整数序列A1,A2,-,An(可能有负数),求A1到An的一个自序列,使得Ai到Aj的和最大.例如:整数序列-2,11,-4,13,-5,2,-5,-3,12,-9的最大子序列为21(从A2到A ...
- java设置word页面为A3_word页面设置里没有A3纸格式怎么办 word怎么设置成a3
今天要打印一张毕业论文的封面,需要用A3纸来打印,可以当我打开页面设置时取发现没有A3纸这一选项,奇怪怎么以前有呢?那么word页面设置里没有A3纸格式怎么办?word怎么设置成a3?下面就为大家详细 ...
- Excel两个重要的公式【=right(a1,1)计算右边第一个字符排序和=len(a1)总字符数排序】
Excel两个重要的公式 =right(a1,1)计算右边第一个字符 =len(a1)总字符数排序]
- Millionaire 2008APAC local onsites C
/*Millionaire 2008APAC local onsites C 题意:最开始你有X元钱,要进行M轮赌博. 每一轮赢的概率为P,你可以选择赌与不赌, 如果赌也可以将所持的任意一部分钱作为赌 ...
- python读取excel一列-python读取excel(xlrd)
一.安装xlrd模块: 1.mac下打开终端输入命令: pip install xlrd 2.验证安装是否成功: 在mac终端输入 python 进入python环境 然后输入 import xlrd ...
- python import xlrd 报错_python读取excel(xlrd)
一.安装xlrd模块: 1.mac下打开终端输入命令: pip install xlrd 2.验证安装是否成功: 在mac终端输入 python 进入python环境 然后输入 import xlr ...
- python xlrd_python读取excel(xlrd)
一.安装xlrd模块: 1.mac下打开终端输入命令: pip install xlrd 2.验证安装是否成功: 在mac终端输入 python 进入python环境 然后输入 import xlrd ...
- 算法--360面试:使用递归实现:a0=1,a1=1;a2=a0+a1;a3=a1+a2...以此类推,求a30
Q题目 编程求解 使用递归实现:a0=1,a1=1;a2=a0+a1;a3=a1+a2;a4=a2+a3...以此类推,求a30 Answer解法 方式一:采用逆向思维 非常明显这是一道简单动态规划的 ...
- 7-99 整数的分类处理 (7 分)给定 N 个正整数,要求你从中得到下列三种计算结果:A1 = 能被 3 整除的最大整数A2 = 存在整数 K 使之可以表示为 3K+1 的整数的个数A3
7-99 整数的分类处理 (7 分) 给定 N 个正整数,要求你从中得到下列三种计算结果: A1 = 能被 3 整除的最大整数 A2 = 存在整数 K 使之可以表示为 3K+1 的整数的个数 A3 = ...
最新文章
- 包区别 版本_详解Linux下二进制包、源代码包、rpm包区别与联系
- java中的集合_Java中集合中的基本概念
- interrupt 1 using 1
- vuedraggable示例_vuedraggable快速入门
- 苹果和谷歌在印度下架数十款中国应用;贾跃亭宣布破产重组完成;Tails 4.8 发布| 极客头条...
- ubuntu简单安装oracle,Ubuntu上Oracle10g安装是一件很简单的事情
- 关于三种主流WEB架构的思考
- 安装AdventureWorks2008R2示例数据库
- @property详细解读
- 2012-8-18可樂美文分享《遗留在时…
- datanucleus+spring 的JDO操作 select save update delete
- 企业什么喜欢做电视看板,电视看板浏览网页的必备工具 电视看板浏览器 电视看板自动打开网页
- [css]我要用css画幅画(七) - 哆啦A梦
- STM32 USB Host 同时连接多个设备样例(如鼠标和键盘)--原创
- 英语发音规则---Y字母
- idea打不开,双击没反应的解决方案
- 怎么调整电脑的鼠标的灵活度
- git clone使用指定用户名和密码
- 【自然语言处理-1】TF-IDF简单最实用的关键词提取技术
- SAP-FICO LSMW批量导财务凭证批量导固定资产主数据-AS91
热门文章
- 江苏计算机中专升大专分数线,江苏卫校分数线_江苏中专卫校招生分数线_江苏五年制大专卫生学校录取分数线...
- matlab怎样和单片机结合,(单片机学习)如何将keil 和PROTEUS联机完美结合方法
- css 隐藏 scrollbar
- 【数据分析案例】用Excel进行数据分析:从市场调研到销售分析
- net程序员应该掌握的常用类库
- 12月30日热烈欢迎软通动力参观武汉众嵌科技
- 停止iframe里的视频音乐播放
- java ashx_ashx文件的使用小结
- 三大算法之一:分治法(带你用分治法思想优化程序,计算降低复杂算法的时间复杂度)
- nodejs内存溢出解决方法