社区
C++ 语言
帖子详情
一个排好序的数组A,长度为n,现在将数组A从位置m(m
yjugdujcm
2011-10-06 05:09:19
如题:一个排好序的数组A,长度为n,现在将数组A从位置m(m<n,m已知)分开,并将两部分互换位置,设计一个O(n)的算法实现这样的倒置,只允许使用一个额外空间。 NND,网上都是一个样子,看来都是Copy的,大家有没有什么好的想法,欢迎讨论一下啊
...全文
269
6
打赏
收藏
一个排好序的数组A,长度为n,现在将数组A从位置m(m<n,m已知)分开,并将两部分互换位置,设计一个O(n)的算法实现这样的倒置,只允许使用一个额外空间
如题:一个排好序的数组A,长度为n,现在将数组A从位置m(m<n,m已知)分开,并将两部分互换位置,设计一个O(n)的算法实现这样的倒置,只允许使用一个额外空间。 NND,网上都是一个样子,看来都是Copy的,大家有没有什么好的想法,欢迎讨论一下啊
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yjugdujcm
2011-10-06
打赏
举报
回复
[Quote=引用 5 楼 baihacker 的回复:]
http://topic.csdn.net/u/20090119/18/82ddc536-a406-4ef0-a4ea-2b0a8bb7fcdf.html
这里讨论过了。
[/Quote]ths
baihacker
2011-10-06
打赏
举报
回复
http://topic.csdn.net/u/20090119/18/82ddc536-a406-4ef0-a4ea-2b0a8bb7fcdf.html
这里讨论过了。
yjugdujcm
2011-10-06
打赏
举报
回复
[Quote=引用 1 楼 baihacker 的回复:]
算法1.分别反转两个子段后再反转全部。
算法2.先求出gcd(n, m)设值为d,则这个置换可分解为d个循环。然后分别在这d个循环上做就行了。
[/Quote]第二个没弄明白,能再详细讲下不?
yjugdujcm
2011-10-06
打赏
举报
回复
[Quote=引用 1 楼 baihacker 的回复:]
算法1.分别反转两个子段后再反转全部。
算法2.先求出gcd(n, m)设值为d,则这个置换可分解为d个循环。然后分别在这d个循环上做就行了。
[/Quote]噢,第一个想法挺好,同样也可以先反转全部,再分别反转两个子段
yjugdujcm
2011-10-06
打赏
举报
回复
[Quote=引用楼主 yjugdujcm 的回复:]
如题:一个排好序的数组A,长度为n,现在将数组A从位置m(m<n,m已知)分开,并将两部分互换位置,设计一个O(n)的算法实现这样的倒置,只允许使用一个额外空间。 NND,网上都是一个样子,看来都是Copy的,大家有没有什么好的想法,欢迎讨论一下啊
[/Quote]噢,第一个想法挺好,同样也可以先反转全部,再分别反转两个子段
baihacker
2011-10-06
打赏
举报
回复
算法1.分别反转两个子段后再反转全部。
算法2.先求出gcd(n, m)设值为d,则这个置换可分解为d个循环。然后分别在这d个循环上做就行了。
安装和配置 Windows Server 2022 更新服务
微软对于自己开发的产品支持方式,其中一种就是开发补丁程序,用于修复微软产品的
已知
问题,比如功能缺陷、安全漏洞、逻辑错误等,这些缺陷一般来自于客户反馈、安全研究人员和团队 并且微软会维护着
一个
在线服务,...
1.6编程基础之一维
数组
C++ NOI / 1.6编程基础之一维
数组
【刷题】
数组
题目描述:在
一个
二维
数组
中(每个一维
数组
的
长度
相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成
一个
函数,输入这样的
一个
二维
数组
和
一个
整数,判断
数组
中是否含有该整数...
华电
数组
题库
任意读入10个整数存放到
数组
a中,统计
数组
中出现频率最高的数,输出该数及其出现次数。 如果
数组
中没有重复出现的数,则输出"没有重复出现的数"。 #include <stdio.h> int main() { int a[10],b,c,d,x[10],...
数组
题库存档(期末复习用)
1、任意读入10个整数存放到
数组
a中,统计
数组
中出现频率最高的数,输出该数及其出现次数。 如果
数组
中没有重复出现的数,则输出"没有重复出现的数"; #include<stdio.h> int main() { int i,j,k=0,a[10],b...
C++ 语言
64,654
社区成员
250,484
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章