算法面试题:字符串反转

当面试算法问题时,一道常见的问题是 "反转字符串"。这个问题测试了你的基本编程能力以及对字符串和数组操作的了解。

问题:

给定一个字符串,将其反转。例如,输入 "Hello",输出 "olleH"。

解答:

可以使用多种编程语言来解决这个问题。以下是一些常见语言的示例解答:

Python 解答:

css 复制代码
def reverse_string(s):
    return s[::-1]

# 测试
input_string = "Hello"
result = reverse_string(input_string)
print(result)  # 输出 "olleH"

JavaScript 解答:

css 复制代码
function reverseString(s) {
    return s.split('').reverse().join('');
}

// 测试
let inputString = "Hello";
let result = reverseString(inputString);
console.log(result);  // 输出 "olleH"

C++ 解答:

css 复制代码
#include <iostream>
#include <string>
using namespace std;

string reverseString(string s) {
    int left = 0;
    int right = s.length() - 1;
    while (left < right) {
        swap(s[left], s[right]);
        left++;
        right--;
    }
    return s;
}

int main() {
    string inputString = "Hello";
    string result = reverseString(inputString);
    cout << result << endl;  // 输出 "olleH"
    return 0;
}

以上示例中,我们使用不同的编程语言实现了字符串反转。基本思路是从字符串的两端开始,交换字符直到中间位置,从而实现反转。这是一个经典的面试问题,常用于测试面试者的编程技能和对字符串操作的理解。

相关推荐
云析赢指标公式网49 小时前
文华WH6布林轨道均线强弱共振指标公式
前端·算法
luj_17689 小时前
一线一区一变破解人盯人防守密码
开发语言·网络·c++·经验分享·算法
Wang's Blog10 小时前
Java框架快速入门: Spring Security+OAuth2之字段验证与自定义验证注解实战
java·算法·spring
带多刺的玫瑰10 小时前
Leecode#29刷题之两数相除
java·python·算法
smj2302_7968265210 小时前
解决leetcode第4017题数组中的峰值II
python·算法·leetcode
午彦琳10 小时前
2026.9.9
数据结构·算法·leetcode
luj_176810 小时前
中锋卡位与开放线博弈
c语言·开发语言·网络·经验分享·算法
洋不写bug10 小时前
二叉树(四)经典算法题目解析,公共祖先,二叉树构造,非递归遍历
数据库·算法·二叉树·二叉树构造·公共祖先
hansang_IR10 小时前
【题解】P4454 [CQOI2018] 破解D-H协议
c++·算法·密码学·数论
梓䈑10 小时前
【动态规划系列】路径问题、子数组 和 子序列问题、背包问题
c++·算法·动态规划