循环右移,要求时间复杂度为O(n)且尽可能的少使用辅助空间
来源:互联网 发布:tgp优化启动速度 编辑:程序博客网 时间:2024/05/01 02:33
#include<iostream>using namespace std;#define ARRAY_LENGTH 9int main(){extern void shiftRight(int *arr ,int begin ,int k);extern void show(int *arr ,int length);int arr[]={1,2,3,4,5,6,7,8,9};cout<<"循环移位前:"<<endl;show(arr,ARRAY_LENGTH);shiftRight(arr,ARRAY_LENGTH,2);//循环移动2位cout<<"循环移位后:"<<endl;show(arr,ARRAY_LENGTH);}/*将arr数组中[begin ,end]中的数据逆序*/void reverse(int *arr ,int begin ,int end){int temp=0;while(begin <end){temp=arr[begin];arr[begin]=arr[end];arr[end]=temp;begin++;end--;}}void shiftRight(int * arr ,int length ,int k){k=k%length;//移动k位与移动(k+n*length)位相同reverse(arr,0,length-k-1);//逆序前(length-k)位reverse(arr ,length-k,length-1);//逆序后k位reverse(arr ,0,length-1);//全部逆序}void show(int *arr ,int length){for(int i=0;i<length;i++){cout<<arr[i]<<"\t";}cout<<endl;}
0 0
- 循环右移,要求时间复杂度为O(n)且尽可能的少使用辅助空间
- 把一个含有N个元素的数组循环右移K位, 要求时间复杂度为O(N)
- 【数学】数组循环右移k位,要求时间复杂度为O(n)
- 试设计一个算法,将数组A(0..n-1)中的元素循环右移k位,并要求空间复杂度为O(1),时间复杂度为O(n)。
- Candy (分糖果),时间复杂度O(n),空间复杂度为O(1),且只需遍历一次的实现
- 将N个字符的数组,循环右移K位。时间复杂度O(N)
- 将N个字符的数组,循环右移K位。时间复杂度O(N)
- 将N个字符的数组,循环右移K位。时间复杂度O(N)
- 将N个字符的数组,循环右移K位。时间复杂度O(N)。
- 人人都来写算法 之 移除字符串中重复的字符,时间复杂度要求O(n),空间复杂度O(1)
- 时间复杂度为O(n),空间复杂度为O(1)
- 给定一个存放整数的数组,重新排列数组使得数组左边为奇数,右边为偶数。 要求:空间复杂度O(1),时间复杂度为O(n)。
- 给定一个存放整数的数组,重新排列数组使得数组左边为奇数,右边为偶数。要求:空间复杂度O(1),时间复杂度为O(n)
- 删除线性表中所有值为x的元素,要求时间复杂度为O(n),空间复杂度为O(1)
- 数据结构之 删除顺序表中所有元素为X 的元素,要求时间复杂度为O(n),空间复杂度为O(1)
- 有1,2,....一直到n的无序数组,求排序算法,要求时间复杂度为O(n),空间复杂度O(1)
- 有1,2,…,n的无序数组,求排序算法,并且要求时间复杂度为O(n),空间复杂度O(1),一次只能交换两个数
- 有1,2,....一直到n的无序数组,求排序算法,要求时间复杂度为O(n),空间复杂度O(1)
- 手机图片注意事项
- 应用自动更新
- XMLHttpRequest对象
- POI 获取Excel列数和行数的方法
- 对字符串进行排序,学会使用仿函数
- 循环右移,要求时间复杂度为O(n)且尽可能的少使用辅助空间
- 关于ios8不能定位问题 - 总是返回kCLAuthorizationStatusNotDetermined
- 清除List中的标点符号和括号
- prink使用方法
- Masonry介绍与使用实践(快速上手Autolayout)
- yaf框架下编写Hello World程序
- int to SAFE_CHAR
- hadoop hbase metric名全解释
- VC++实现动画弹出/弹入式窗口