c++编程:反转字符串(leetcode344)

c++编程:反转字符串

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main(){
    string s;                      // ✅ 用 string 代替 vector<char>
    cin >> s;                      // ✅ 直接输入字符串
    int len = s.size();            // ✅ 声明 len 变量
    
    for(int i = 0, j = len - 1; i < len / 2; i++, j--) {
        swap(s[i], s[j]);          // ✅ 交换字符
    }
    
    cout << s << endl;             // ✅ 直接输出字符串
    return 0;
}

1. vector<char> 不能直接用 cin>> 输入 ❌

vector<char> s;

cin >> s; // ❌ 错误!vector 没有直接输入操作符

2. vector<char> 不能直接用 cout<< 输出 ❌

cout << s; // ❌ 错误!vector 没有直接输出操作符

如果用 vector<char> 的正确写法

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main(){
    string str;
    cin >> str;
    
    vector<char> s;
    for(int i = 0; i < str.length(); i++) {
        s.push_back(str[i]);
    }
    
    // 使用 for 循环反转
    for(int i = 0; i < s.size() / 2; i++) {
        swap(s[i], s[s.size() - 1 - i]);   // 交换对称位置的字符
    }
    
    for(int i = 0; i < s.size(); i++) {
        cout << s[i];
    }
    cout << endl;
    
    return 0;
}
相关推荐
生态学者3 小时前
Global Change Biology | 森林越“步调一致”,反而越怕干旱?树木生长与叶片活动的同步之谜
大数据·人工智能·算法·r语言·微信公众平台
所以遗憾是什么呢?4 小时前
【题解】Educational Codeforces Round 195 (Rated for Div. 2) ABCDE
c++·动态规划·acm·icpc·ccpc·xcpc·codeforecs
lsswear4 小时前
Agent 框架新手入门与实战部署指南
大数据·人工智能·算法
学逆向的4 小时前
C 循环结构的执行效率分析
c语言·开发语言·数据结构·网络安全
Lhan.zzZ5 小时前
Qt WebEngineView 在 Linux 上无法加载网页:从“看不见 HTML“到“禁用沙箱“
linux·c++·qt
Data analyse4566 小时前
rnweb 回放数据量太大怎么办?分片存储与断点续传的实现思路
前端·网络·算法·数据分析
sysu_chenxy7 小时前
二重循环输出二维图形
c++
Navigator_Z7 小时前
LeetCode //C - 1293. Shortest Path in a Grid with Obstacles Elimination
c语言·算法·leetcode
Nil2087 小时前
leetcode 64最小路径和
算法·leetcode·职场和发展
光影少年7 小时前
AI Agent、自动化与未来工作
人工智能·算法·架构