循环移位算法
来源:互联网 发布:网络规划设计师 没人考 编辑:程序博客网 时间:2024/04/30 00:46
#include <iostream>#include <string.h>#include <assert.h>static void Swap(char *p, char *q);static void Reverse(char *str, size_t i, size_t n);void String_Shift_Reverse(char *str, int n){ size_t len; assert(NULL != str); len = strlen(str); if (n <=0 || n >= len) { return; } Reverse(str, 0, n - 1); //先翻转0~n-1的前部分 Reverse(str, n, len - 1);//再翻转n~len-1的后部分 Reverse(str, 0, len - 1);//最后翻转0~len整体部分}//交换函数static void Swap(char *p, char *q){ char tmp; tmp = *p; *p = *q; *q = tmp;}//翻转函数static void Reverse(char *str, size_t i, size_t n){ size_t l, r; for (l = i, r = n; l < r; l++, r--) { Swap(&str[l], &str[r]); }}int main(int argc, const char * argv[]) { // insert code here... std::cout << "Hello, World!\n"; char num[10] = {"123456789"}; for(int i = 0; i < 10; i++) { std::cout << num[i] << std::endl; } String_Shift_Reverse(num, 2); for(int i = 0; i < 10; i++) { std::cout << num[i] << " "; } return 0;}
0 0
- 数组循环移位算法
- 数组循环移位算法
- 循环移位算法
- 字符串循环移位算法
- 数组循环移位算法
- 数组循环移位算法
- 循环移位算法
- 数组循环移位算法
- 数组循环移位算法
- 算法之---字符串循环移位
- 循环移位(翻转算法)
- 数组左循环移位算法
- 关于循环移位的高效算法
- 字符串循环移位的三种算法
- 算法1_字符串的循环移位
- 算法:字符串解析之循环移位
- 循环移位
- 循环移位
- iOS疯狂详解之自动布局(autolayout)下图片编辑器的实现
- (十一)洞悉linux下的Netfilter&iptables:iptables命令行工具源码解析【上】
- 各种字符集编码
- dwz的删除刷新页面操作
- Linux查找命令与find命令详解
- 循环移位算法
- 百度地图位置纠偏
- [RBA开发系列一] 建立http 请求的process
- mysql数据库要按当天、昨天、前七日、近三十天、季度、年查询
- Visual C++下的unicode
- 虚拟机性能监控与故障处理工具
- c++题目1
- matlab一些小命令(不断更新中)
- (十二)洞悉linux下的Netfilter&iptables:iptables命令行工具源码解析【下】