知识点:
双指针:双指针。
三种解法:
解法一:定义一个新的字符串,倒序赋值。
解法二:原字符串,交换对应字符。
解法三:直接调用库函数reverse()。
#include <algorithm> // 解法一:定义一个新的字符串,倒序赋值。 // class Solution { // public: // /** // * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 // * // * 反转字符串 // * @param str string字符串 // * @return string字符串 // */ // string solve(string str) { // // write code here // string ans = str; // int len = str.length(); // for (int i = 0; i < len; i++) { // ans[i] = str[len - 1 - i]; // } // return ans; // } // }; // 解法二:原字符串,交换对应字符 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * 反转字符串 * @param str string字符串 * @return string字符串 */ string solve(string str) { // write code here int len = str.length(); for (int i = 0; i < len / 2; i++) { swap(str[i], str[len - 1 - i]); } return str; } }; // 解法三:直接调用库函数reverse() // class Solution { // public: // /** // * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 // * // * 反转字符串 // * @param str string字符串 // * @return string字符串 // */ // string solve(string str) { // // write code here // reverse(str.begin(), str.end()); // return str; // } // };