版权声明:本文为博主原创文章未经博主允许不得转载。 /mayh/article/details/
设计一个算法,把一个含有N个元素的数组循环右移K位
最容易想到的就是每次将数组中的元素右移一位,循环K次
这里的复杂度为K*N次,我们接下来再用一个方法来改进
这里对数组进行了复制K次,将后面的元素前移N-K次然后再将K 个元素拼接到数组后媔进行了K次操作,一共进行了N+K次操作然而空间复杂度为K.
这里有一个很巧妙的方法来实现数组循环。
4.将这个已拼接的数组逆置: 5671234 就成了我們想要的结果了
上述算法Reverse函数时间复杂度分别为K/2, (N-K)/2,N/2, 所以总的复杂度为O(N),空间复杂度为O(1)
专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档
VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档
VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档
付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档
共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。
利用指针交换 将一个数组头尾进行交换 一个非常简单的东西
0 | 0 |
为了良好体验不建议使用迅雷下载
會员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
为了良好体验不建议使用迅雷下载
0 | 0 |
为了良好体驗,不建议使用迅雷下载
您的积分不足将扣除 10 C币
为了良好体验,不建议使用迅雷下载
开通VIP会员权限免积分下载
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。