leetcode-剑指58-II-OK

address

// 先全部逆置,然后逆置后n位


char* reverseLeftWords(char* s, int n){
// 逆置函数
	void inverse(int start, int end){
		char temp;
		while(end>start){
			temp = s[start];
			s[start] = s[end];
			s[end] = temp;
			start++;
			end--;
		}
	}
// 求字符串长函数
	int getlen(char* s){
		int chang = 0;
		while(s[chang] != '\0'){
			chang++;
		}
		return chang;
	}
	int len = getlen(s);
	n = n%len;
	inverse(0, len-1);
	inverse(len-n,len-1);
	inverse(0,len-n-1);
	return s;
}
posted @ 2021-01-24 00:00  RougeBW  阅读(29)  评论(0编辑  收藏  举报