题解 | #替换空格#

替换空格

https://www.nowcoder.com/practice/0e26e5551f2b489b9f58bc83aa4b6c68

这一题一看到就想到了队列(结果顺序不变),先将字符串全部压入队列,再pop之前确任front是否为空格。

  • 时间复杂度:O(2n)
  • 空间复杂度:用了一个和字符串等长的队列,所以是O(n)
    string replaceSpace(string s) {
          // write code here
          queue  q;
          char i;
          string::iterator it;
          string result = "";
          if(s.empty()) return result;
          for(it = s.begin();it!=s.end();it++) {
              q.push(*it);
          }
          while(!q.empty()) {
              i = q.front();
              if(i == ' ') {
                  result += "%20";
              } else {
                  result += i;
              }
              q.pop();
          }
          return result;
      }
全部评论

相关推荐

咖啡馆守时的南瓜:这份简历是“大一新生硬凹资深后端”的典型反面教材,槽点离谱到能让面试官直接笑出声: ### 1. 「年龄+入学时间」和项目复杂度完全脱节,可信度直接归0 你2024年7月才入学(现在刚读了1年多),19岁的大一新生,能把Vue3+Spring Boot+ShardingSphere+K8s+AI这些技术全塞进两个项目里?别说实际开发,光把这些技术的文档看完都得半年——这不是“能力强”,是“把招聘JD里的技术词全抄过来造假”,明摆着没碰过实际代码
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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