渣渣渣变渣渣系列(1)
一、题目描述:(408联考 2010真题)
二、算法思想:
可以将这个问题看作是把数组ab转换为ba(a代表数组的前p个元素,b代表数组中的余下n-p个元素),先将a逆置得到a-1b,再将b逆置得到a-1b-1,最后将整个a-1b-1逆置为(a-1b-1)-1=ba。
三、核心代码:
void Reverse(int R[],int from,int to)
{int temp;int i;for(i=0;i<(to-from+1)/2;i++){temp=R[from+i];R[from+i]=R[to-i];R[to-i]=temp;}
}
void Converse(int R[],int n,int p)
{Reverse(R,0,p-1);Reverse(R,p,n-1);Reverse(R,0,n-1);
}
四、完整代码:
#include<stdio.h>
void Reverse(int R[],int from,int to);
void Converse(int R[],int n,int p);
void Print(int R[],int n);
int main()
{int R[10]={0,1,2,3,4,5,6,7,8,9};int n;int p;n=sizeof(R)/sizeof(int);printf("please input the value of p:");scanf("%d",&p);Converse(R,n,p);Print(R,n);return 0;
}
void Reverse(int R[],int from,int to)
{int temp;int i;for(i=0;i<(to-from+1)/2;i++){temp=R[from+i];R[from+i]=R[to-i];R[to-i]=temp;}
}
void Converse(int R[],int n,int p)
{Reverse(R,0,p-1);Reverse(R,p,n-1);Reverse(R,0,n-1);
}
void Print(int R[],int n)
{int i;for(i=0;i<n;i++)printf("%d",R[i]);
}
五、测试结果:
渣渣渣变渣渣系列(1)相关推荐
- 渣渣渣变渣渣系列(8)
一.题目描述 二.算法思想: 本算法目的是求带权路径的长度,就是叶子节点的深度乘以叶子的权重之和.关键是如何求出每个叶子节点的深度,在这里最简单的方法就是利用递归算法. 三.核心代码: int WPL ...
- 渣渣渣变渣渣系列(5)
一.题目描述: 现在有n个圆盘从上往下从小到大叠在第一根柱子上,要把这些圆盘全部移动到第三根柱子要怎么移动呢?请找出需要步骤数最少的方案因此我们可以将问题简化描述为:n个盘子和3根柱子:A(源).B( ...
- 渣渣渣变渣渣系列(6)
一.题目描述: 二.算法思想: 本题的算法思想比较简单,因为题中已经给明数据结构,当后缀一样时,使用同一个存储空间,我们只需要想办法找出第一个两个链表的相同地址即可.本算法采用的方法是,首先将指针指向 ...
- 渣渣渣变渣渣系列(2)
一.题目描述:(408联考真题 2011) 二.算法思想: 分别求两个升序序列A和B的中位数,设为a和b,求序列A和B的中位数过程如下: 1)若a=b,则a或b即为所求中位数,算法结束. 2)若a&l ...
- 渣渣渣变渣渣系列(4)
一.题目描述: 二.算法思想: 本算法的关键在于利用两个指针,一个指针用来遍历计数,另一个指针用来指向n-k个值,即倒数第k个值. 三.核心代码: int search_k(int k,link*he ...
- 渣渣渣变渣渣系列(3)
<strong>一.题目描述:</strong> 二.算法思想: 本算法的巧妙之处在于充分利用主元素的定义,即在序列中个数超过半数的元素.那么在动态统计的过程中,主元素出现的频 ...
- @字王2012·纵变体系列,共12款
转载于:https://www.cnblogs.com/ziwang/archive/2012/05/23/9500463.html
- 交流信号隔离变送器(DIN导轨安装式)
产品概述: 导轨安装DIN11交流电压隔离变送器,能将输入的交流信号按比例转换成4~20mA标准信号, 输入交流电压信号:输出为4~20mA直流电流信号或0~5VDC直流电压信号.实现辅助电源和输入输 ...
- 苹果呼叫转移设置不了_手机不关机!黑客教你设置手机变空号,开启真正免打扰!...
怎么把手机号码设置成空号. 一般情况下不想接到电话,关机.飞行模式都能搞定,或者静音还你一片安静. 在王者荣耀排位赛中,此时手机忽然"女友来电",自动跳出游戏界面--快速挂断电话返 ...
最新文章
- Vue Iview Tree插件的无限层
- JSON序列化(stringify)对象时排除某些属性的两种方法
- java 拦截器响应中取所有参数,spring boot拦截器中获取request post请求中的参数
- win7开启uasp协议_UASP与USB模式切换工具(SwitchUA官方版下载_UASP与USB模式切换工具(SwitchUASP) v1.0免费版 - Win7旗舰版...
- Sublime Text 3 初试牛刀
- Jenkins 2.322 安装 自定义插件
- hdu1048(c++)
- 图吧工具箱2021最纯净的电脑硬件工具箱
- 华为NP课程笔记28-IEEP课件摘录
- Mac 下如保查看二进制文件,比如.heic文件
- MATLAB人脸识别区域定位实战源码解析
- 7-76 打印选课学生名单 (25分)
- php 二级导航,导航下面的二级导航,显示和隐藏,
- linux dbm数据库,linux dbm数据库
- hackthebox - jail (考点:linux缓冲区 nfs配置提权 rvim提权 rar解密 rsa解密)
- 苏云技术导航网站源码 附后台
- 工业读写器对接信捷 PLC通信示例
- 内网ip 查 核心交换机 流量_华为交换机做端口流量统计
- 洞悉物联网发展1000问之为什么新零售不仅仅是无人零售?
- JRebel热部署,从此告别一遍一遍重启项目
热门文章
- easyUI 提交按钮linkbutton失效和恢复设置
- 【NOIP2017提高A组集训10.25】摘Galo (树形dp)
- Moblin授权中心在台北挂牌开业
- 三菱fx5u modbus tcp fb块用法_2020江苏三菱PLCFX3GA14MR回收回收电话西门子软启动器...
- 可用内存不够异常问题的处理
- 案例3-数据驱动测试-从excel导入数据
- 谷歌浏览器后提示Adobe Flash Player因过期而遭到阻止
- java面试的一些流程问题
- 基于SDR的智能反射面波束成形设计
- Centos 6或7系统 从Kernel panic – not syncing: Attempted to kill init 故障引发的一系列操作