Redian新闻
>
老题重提:反转字符串
avatar
老题重提:反转字符串# JobHunting - 待字闺中
b*m
1
输入:this lady is beautiful
输出:beautiful is lady this
有时间O(n)、空间O(1)的in place解法么?
avatar
C*y
2
第一步整个字符串reverse
第二步按单词reverse

【在 b***m 的大作中提到】
: 输入:this lady is beautiful
: 输出:beautiful is lady this
: 有时间O(n)、空间O(1)的in place解法么?

avatar
h*n
3
非得让我写个code么?
avatar
p*2
4

你已经问了好几遍了呀

【在 b***m 的大作中提到】
: 输入:this lady is beautiful
: 输出:beautiful is lady this
: 有时间O(n)、空间O(1)的in place解法么?

avatar
p*2
5
感觉大牛在挖坑。
avatar
C*y
6
也可能工作多年了,不碰这个无聊的玩意了

【在 p*****2 的大作中提到】
: 感觉大牛在挖坑。
avatar
h*n
7
无聊写了一个,请大牛指点
void ReverseWordList(char * str)
{
char * p = str;
char * start = str;
char * end = str;
bool inWord = false;
while(*end++);
end--;
Reverse(start, end);
while(*p)
{
if(*p==' ')
{
if(inWord)
{
inWord = false;
end = p-1;
Reverse(start, end);
}
}
else
{
if(!inWord)
{
inWord = true;
start = p;
}
}
p++;
}
if(inWord)
{
Reverse(start, p-1);
}
}
void Reverse(char * start, char * end)
{
while(start{
*start ^= *end;
*end ^= *start;
} *start++ ^= *end--;
}
avatar
p*2
8

跟我的java差不多,我也写了一个,凑够3题。
static void reverse(char[] str, int i, int j)
{
while(i{
char tmp=str[i];
str[i++]=str[j];
str[j--]=tmp;
}
}
static void reverseStr(char[] str)
{
reverse(str,0,str.length-1);
int start=-1;
int i=0;
while(i{
if(str[i]==' ')
{
if(start>=0)
{
reverse(str, start, i-1);
start=-1;
}
}
else
{
if(start<0)
{
start=i;
}
}
i++;
}

if(start>0)
reverse(str,start,i-1);
}

【在 h****n 的大作中提到】
: 无聊写了一个,请大牛指点
: void ReverseWordList(char * str)
: {
: char * p = str;
: char * start = str;
: char * end = str;
: bool inWord = false;
: while(*end++);
: end--;
: Reverse(start, end);

avatar
l*a
9
好猫同学给你介绍两本书
1)programming interview exposed
2) crack technical interview
这上的题目做熟了,加上你的经验。除了G以外的公司基本都问题不大

【在 b***m 的大作中提到】
: 输入:this lady is beautiful
: 输出:beautiful is lady this
: 有时间O(n)、空间O(1)的in place解法么?

avatar
b*m
10
啊?俺问过嘛?

【在 p*****2 的大作中提到】
:
: 跟我的java差不多,我也写了一个,凑够3题。
: static void reverse(char[] str, int i, int j)
: {
: while(i: {
: char tmp=str[i];
: str[i++]=str[j];
: str[j--]=tmp;
: }

avatar
l*a
11
你昨晚的某个帖子里就问过
今天单开一帖再问

【在 b***m 的大作中提到】
: 啊?俺问过嘛?
avatar
b*m
12
多谢啊,这书你有吗,能借来看看吗?

【在 l*****a 的大作中提到】
: 好猫同学给你介绍两本书
: 1)programming interview exposed
: 2) crack technical interview
: 这上的题目做熟了,加上你的经验。除了G以外的公司基本都问题不大

avatar
b*m
13
哦,好像是的,年纪大了,记性极差。

【在 l*****a 的大作中提到】
: 你昨晚的某个帖子里就问过
: 今天单开一帖再问

avatar
l*a
14
电子版pdf
自行下载即可

【在 b***m 的大作中提到】
: 多谢啊,这书你有吗,能借来看看吗?
avatar
h*n
15
第二本书是啥?说说看
不是那个150题吧?

【在 l*****a 的大作中提到】
: 好猫同学给你介绍两本书
: 1)programming interview exposed
: 2) crack technical interview
: 这上的题目做熟了,加上你的经验。除了G以外的公司基本都问题不大

avatar
l*a
16
当然就是

【在 h****n 的大作中提到】
: 第二本书是啥?说说看
: 不是那个150题吧?

avatar
b*m
17

反转字符串之类的,基本上也没人写了啊。

【在 C***y 的大作中提到】
: 也可能工作多年了,不碰这个无聊的玩意了
avatar
b*m
19

多谢啊,这本书我有纸版的了,不过看看PDF有时也很方便。另外那本书的link有吗?

【在 c********s 的大作中提到】
: http://fooo.fr/~vjeux/epita/careercup_4th.pdf
: 觉得真的挺使用。

avatar
K*i
20
论做题看书的精力,有家有小的老同志和单身无孩的年轻人比总吃亏些。
现在看来古代的范进那真是不容易啊

【在 b***m 的大作中提到】
: 哦,好像是的,年纪大了,记性极差。
avatar
K*i
21
这题Interview Exposed上的经典老题了,不过面试官也知道太老的题就不会考了吧

【在 b***m 的大作中提到】
: 输入:this lady is beautiful
: 输出:beautiful is lady this
: 有时间O(n)、空间O(1)的in place解法么?

avatar
b*m
22

是呀,所以我现在更加磨练嘴皮子了。

【在 K*******i 的大作中提到】
: 论做题看书的精力,有家有小的老同志和单身无孩的年轻人比总吃亏些。
: 现在看来古代的范进那真是不容易啊

avatar
h*0
23

话说这道题我同学每次面试都必考,面了4次了,次次都有这题。。。 可惜我一次都没
遇到过。。。

【在 b***m 的大作中提到】
: 输入:this lady is beautiful
: 输出:beautiful is lady this
: 有时间O(n)、空间O(1)的in place解法么?

avatar
b*m
24
也难讲啊,我就知道很多面试官长年累月不换题。

【在 K*******i 的大作中提到】
: 这题Interview Exposed上的经典老题了,不过面试官也知道太老的题就不会考了吧
avatar
h*e
25
void reverseWord(string & str)
{
reverse(str.begin(), str.end());
for(int i = 1, pre = 0; i<= str.size();++i)
if((i == str.size() || isspace(str[i])) && !isspace(str[i-1]))
reverse(str.begin() + pre, str.begin() + i);
else if((i == str.size() || !isspace(str[i])) && isspace(str[i-1]))
pre = i;
}
经典题哦我也写一个,大牛面前献丑了:)
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。