剑指offer(4)替换空格

2人阅读 评论(0) 收藏 举报
分类:

本算法方法来自于剑指offer,并牛客网编程通过

#include<iostream>
using namespace std;
class Solution {
public:
	void replaceSpace(char *str, int length)
	{
		if (str == NULL || length <= 0)
			 return;
		int originallength = 0;
		int numberofblank = 0;
		int i=0 ;
		while(str[i]!= '\0')
		{
			++originallength;
			if (str[i] == ' ')
				++numberofblank;
			++i;
		}//计算字符串长度,空格数量
		int newlength = originallength + 2 * numberofblank;//计算增加空格后的长度
		if (newlength > length)
			return;
		int indexoriginal = originallength;
		int indexnew = newlength;
		while (indexoriginal >= 0 && indexnew > indexoriginal)
		{
			if (str[indexoriginal] == ' ')
			{
				str[indexnew--] = '0';
				str[indexnew--] = '2';
				str[indexnew--] = '%';
			}//添加%20
			else
			{
				str[indexnew--] = str[indexoriginal];//原始字符向后移
			}
			--indexoriginal;
		}
		cout << str << endl;
	}
};
int _tmain()
{
	int length = 30;
	cout << "intput string: ";
	char str1[20];
	cin.get(str1, 20);//cin.get(字符数組名,接收字符数目)用來接收一行字符串,可以接收空格
	Solution S;
	S.replaceSpace(str1, length);
	system("pause");
	return 0;
}

查看评论

剑指Offer面试题4(Java版),替换空格

题目:请实现一个函数,把字符串中的每个空格替换成“%20”。例如输入“We are happy",则输出”We%20are%20happy". 原因:在网络编程中,如果URL参数中含有特殊字符,如:空...
  • jsqfengbao
  • jsqfengbao
  • 2015-07-24 17:58:17
  • 2262

【剑指Offer】替换空格

题目描述请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。解题思路遍历字符串,遇到空格,就把空格...
  • zgljl2012
  • zgljl2012
  • 2015-09-16 19:49:41
  • 1693

【剑指offer】-替换空格

题目:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 解析:如果从前往后替换字符串中的空格,...
  • Kevin_zhai
  • Kevin_zhai
  • 2015-11-02 15:04:09
  • 1228

剑指offer之空格替换(Python)

请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。...
  • u010636181
  • u010636181
  • 2017-10-14 17:19:28
  • 61

JAVA实现替换空格(《剑指offer》牛客网StringBuffer)

最近在刷《剑指offer》里的编程题,但是网上关于《剑指offer》的解答多半是C或者C++的,而且官方(作者)也是在用C++进行讲解,这里自己用java写了一些题目的解答代码(当然也有部分是借鉴了网...
  • xiaopihaierletian
  • xiaopihaierletian
  • 2017-04-24 16:33:29
  • 379

剑指offer(C++)——替换空格

题目描述 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 思路:简单暴力解法,从...
  • YF_Li123
  • YF_Li123
  • 2017-04-21 17:08:47
  • 825

剑指offer算法 java实现 替换字符串空格

剑指offer算法 java实现
  • believejava
  • believejava
  • 2014-08-19 15:24:56
  • 7705

《苦练算法》-剑指Offer- 二、 替换空格 -python编写

题目: 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 我首先想到的是将这个string...
  • qq_33431368
  • qq_33431368
  • 2018-01-31 18:50:17
  • 27

剑指offer 算法2 替换空格(python)

请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。...
  • yehan36
  • yehan36
  • 2017-08-29 19:34:36
  • 302

牛客网-剑指offer(二 )替换空格

牛客网剑指offer第二题,替换空格,原地址在这https://www.nowcoder.com/ta/coding-interviews想要练习的小伙伴可以去练习,期待大家都能拿到好的offer。题...
  • hjxu2016
  • hjxu2016
  • 2018-03-26 17:34:16
  • 31
    个人资料
    等级:
    访问量: 1442
    积分: 94
    排名: 142万+
    文章分类
    文章存档
    最新评论