题目链接:点击打开链接
题目大意:略。
解题思路:略。
相关企业
- 字节跳动
AC 代码
- Java
// 解决方案(1) class Solution { public String reverseLeftWords(String s, int n) { return s.substring(n) + s.substring(0, n); } } // 解决方案(2) class Solution { public String reverseLeftWords(String s, int n) { StringBuilder res = new StringBuilder(); for(int i = n; i < s.length(); i++) res.append(s.charAt(i)); for(int i = 0; i < n; i++) res.append(s.charAt(i)); return res.toString(); } } // 解决方案(3) class Solution { public String reverseLeftWords(String s, int n) { StringBuilder res = new StringBuilder(); for(int i = n; i < n + s.length(); i++) res.append(s.charAt(i % s.length())); return res.toString(); } }
- C++
// 解决方案(1) class Solution { public: string reverseLeftWords(string s, int n) { return s.substr(n, s.size()) + s.substr(0, n); } }; // 解决方案(2) class Solution { public: string reverseLeftWords(string s, int n) { reverseString(s, 0, n - 1); reverseString(s, n, s.size() - 1); reverseString(s, 0, s.size() - 1); return s; } private: void reverseString(string& s, int i, int j) { while(i < j) swap(s[i++], s[j--]); } }; // 解决方案(3) class Solution { public: string reverseLeftWords(string s, int n) { reverse(s.begin(), s.begin() + n); reverse(s.begin() + n, s.end()); reverse(s.begin(), s.end()); return s; } };