zoukankan      html  css  js  c++  java
  • 华为机试之句子逆序

    题目要求:

    将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”
    所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符


    接口说明

    /**
     * 反转句子
     * 
     * @param sentence 原句子
     * @return 反转后的句子
     */
    public String reverse(String sentence);

    输入描述:

    将一个英文语句以单词为单位逆序排放。

    输出描述:

    得到逆序的句子

    示例1

    输入

    I am a boy
    

    输出boy a am I
    我的解决方案:

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

    void solve(string str, vector<string> &words)
    {
     string w;
     int i = 0;
     int j = str.find(" ");
     while (j != -1)
     {
      w = str.substr(i, j - i);
      words.push_back(w);
      i = j + 1;
      j = str.find(" ", i);
     }
     if (i<str.length() - 1)
     {
      w = str.substr(i);
      words.push_back(w);
     }
    }

    int main()
    {
     //string s="I am a boy";
     string s;
     getline(cin, s);
     vector<string> words;
     //cout<<"句子中的单词分别为:"<<endl;
     solve(s, words);
     vector<string>::reverse_iterator rit;
     for (rit = words.rbegin(); rit != words.rend()-1; ++rit)
     {
      cout << *rit << ' ';
     }
     cout << *words.begin();
     cout << endl;
     return 0;

    }

  • 相关阅读:
    node 读取文件
    jQuery全局事件处理函数
    可以发送不同源请求的方式
    ajax 高度封装的函数
    jQuery中AJAX的回调
    jQuery中对AJAX的封装
    ajax 基本的封装
    AJAX 返回数据问题
    ajax 关于响应类型
    动态渲染数据到表格中
  • 原文地址:https://www.cnblogs.com/wangzongze/p/8748132.html
Copyright © 2011-2022 走看看