C语言题(3)
来源:互联网 发布:数据标准是什么 编辑:程序博客网 时间:2024/06/10 15:58
给定一个字符串,要求把字符串前面的若干个字符移动到字符串的尾部,如把字符串“abcdef”前面的2个字符’a’和’b’移动到字符串的尾部,使得原字符串变成字符串“cdefab”。请写一个函数完成此功能,要求对长度为n的字符串操作的时间复杂度为 O(n),空间复杂度为 O(1)。?
void reverseStr(char *s, int from, int to){ while (from < to) { char temp = s[from]; s[from++] = s[to]; s[to--] = temp; }}void changePositionOfStr(char * s ,int p){ int n = (int)strlen(s); p = p % n; reverseStr(s, 0, p-1); reverseStr(s, p, n-1); reverseStr(s, 0, n-1);}
阅读全文
0 0
- C语言题(3)
- C语言笔试题-3
- C语言笔试题(3)
- C语言笔试题之3
- C语言100题(3)
- C语言笔试题之3
- C语言笔试题总结3
- 编程题#3:发票统计 C语言
- 一道C语言题
- C语言测试题
- C语言笔试题
- C语言笔试题
- C语言笔试题
- c语言笔试题
- C语言一题
- c语言笔试题
- C语言测试题
- C语言迷题
- 如何隐藏你的 Linux 的命令行历史
- HTTPURLConnection使用案列
- 别笑了眼泪都掉了
- JMX解读
- atoi()函数的实现
- C语言题(3)
- 【数据压缩】MPEG音频编码实验
- spring+springmvc+myabtis+bootstrap 填补天坑(1)-静态资源加载问题
- Android多进程模式
- 【bzoj2687】交与并
- RED推出全球首款全息智能手机Hydrogen One
- 去大公司还是小公司工作
- 新电脑+旧系统:教你在不同机器间转移Linux
- 欢迎使用CSDN-markdown编辑器