Reverse ,看似一个简单的功能,但它却出现在许多公司的面试题库。
那我们直接来看它是如何实现的吧!
学习目标: C++ String and Number Reverse 实务
学习难度: ☆☆☆
首先是String Reverse
#include <iostream>
using namespace std;
string reverse(string input)
{
string output="";
for(int i=input.length()-1;i>=0;i--)
{
output=output+input[i];
}
return output;
}
int main()
{
string input="Wilson";
cout<<reverse(input)<<endl;
return 0;
}
这样就能将input的string给反转呢!
再来是Integer Reverse
#include <iostream>
using namespace std;
int reverse(int input)
{
if(input==0) return 0;
int n = (input<0)?1:0; //判断input正负数
input = abs(input);
long int output = input%10;
input /= 10;
while(input>0)
{
output *= 10;
output += (input%10);
input /= 10;
}
if(n == 1) output = output - 2*output;
if(output < -2147483648 || output > 2147483647) output = 0;
return output;
}
int main()
{
int input;
cin>>input;
if(cin.fail())
{
cin.clear(); //错误flag改回0,用意是让我们能继续输入
cin.sync(); //清空输入暂存
main();
}
else
{
cout<<reverse(input)<<endl;
}
return 0;
}
参考资料:
https://www.twblogs.net/a/5bb048912b7177781a0febe9
https://leetcode.com/problems/reverse-integer/
在我们整个系列教学里,所有的操作都是在 TeamCity 的 Web UI 上完成,而 TeamCi...
1293. Shortest Path in a Grid with Obstacles Elimi...
关於注入 基於关注点分离所以要做到依赖注入,相依於介面而非实做,如此要抽换实作的内容就显得比较方便,...
请教各位高手,如这个卖纪念品的网站 https://myspotifyplaque.com/ 他可以...
大家好,本系列文章探讨经典 Design Patterns 在现代语言 Golang 的演变。虽然...