字符串的左旋转最佳解法
摘要:
题目:定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。 如把字符串abcdef左旋转2位得到字符串cdefab。 请实现字符串左旋转的函数,要求对长度为n的字符串操作的时间复杂度为O(n),空间复杂度为O(1)。思路:其实这种题目很好解。直接对每个位置迭代求数据来源位置就可以了。有另外一些解法,比如交换法,双反转法,递归法,对于解此题目没什么高效的解法。我认为以下解法完全满足题目要求,是最佳的。[cpp] view plaincopyprint?void rotate_left_string(char * src, int m) { int n = strlen(src). 阅读全文
posted @ 2012-10-24 10:50 疯狂的小麦 阅读(153) 评论(0) 推荐(0)
浙公网安备 33010602011771号