题解 | 字符逆序

字符逆序

https://www.nowcoder.com/practice/cc57022cb4194697ac30bcb566aeb47b

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int main() {
    string s;
    getline(cin, s);
    /*size_t 是一个无符号整数类型(unsigned integer type),通常用于表示内存中对象的大小或数组的索引。
它是标准库中定义的类型,具体实现依赖于编译器和平台。
在 C++ 中,size_t 定义在头文件 <cstddef> 中(C 语言中定义在 <stddef.h> 中)。
size_t 的用途
表示大小:
size_t 通常用于表示对象的大小(例如,sizeof 运算符的返回值类型就是 size_t)。
例如:size_t size = sizeof(int); // size 是 int 类型的大小
表示索引:

size_t 常用于数组或容器的索引,因为它可以表示足够大的范围来覆盖所有可能的索引。
例如:
std::vector<int> vec = {1, 2, 3, 4, 5};
for (size_t i = 0; i < vec.size(); i++) {
    std::cout << vec[i] << " ";
}

标准库函数的返回值:
许多标准库函数(如 std::string::find、std::vector::size 等)返回 size_t 类型的值。
例如:
std::string str = "hello";
size_t pos = str.find('e'); // pos 是字符 'e' 在字符串中的位置
*/
    // 去掉开头和结尾的空格
    size_t start = s.find_first_not_of(' ');
    size_t end = s.find_last_not_of(' ');
    if (start == string::npos || end == string::npos) {
        // 如果字符串全是空格
        cout << "" << endl;
        return 0;
    }
    s = s.substr(start, end - start + 1);

    // 反转字符串
    reverse(s.begin(), s.end());

    // 输出结果
    cout << s << endl;
    return 0;
}

全部评论

相关推荐

08-19 17:40
Java
吴offer选手:666 打老板了吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务