这个是非常基本的一道面试题,但是要考虑周全。

首先反转一个字符串:

基本思路是变成Char数组,然后调用C#里面的方法,或者设定两个index,从头,尾向中间遍历,并交换。

方法一: Array.Reverse(char *). 注意在开始的时候要判断字符串为null或空。

        public static string ReverseString(string input)
{
if (String.IsNullOrEmpty(input))
{
return input;
} char[] charArray = input.ToCharArray();
Array.Reverse(charArray);
return new String(charArray);
}

方法二: 交换字符。

        public static string ReverseString1(string input)
{
if(String.IsNullOrEmpty(input))
{
return input;
} char[] charArray = input.ToCharArray();
char tmp;
for(int i = , j = charArray.Length - ; i < j; i++, j--)
{
tmp = charArray[i];
charArray[i] = charArray[j];
charArray[j] = tmp;
} return new string(charArray);
}

反转句子当中的单词:

        public static string ReverseWords(string input)
{
if (String.IsNullOrEmpty(input))
{
return input;
} string[] splits = input.Split(' ').Select(str=> str.Trim()).ToArray();
StringBuilder output = new StringBuilder();
for(int i = splits.Length - ; i >= ; i--)
{
output.Append(splits[i]);
if(i != )
{
output.Append(" ");
}
} return output.ToString();
}

最新文章

  1. C++ ## ... 实用
  2. ctrl+c,ctrl+d,ctrl+z在linux中意义
  3. 第九十八天请假 PHP TP框架 空操作和命名空间
  4. .net中类型转换的案例
  5. Python得到前面12个月的数据,Python得到现在时间 前一年的数据,
  6. ElasticSearch小操之Marvel,Sense
  7. &lt;Learning How to Learn&gt;Week One: Focused versus Diffuse Thinking
  8. PS抠出树叶树枝
  9. JAVA学习:异常
  10. OR1200中指令Cache的结构
  11. C++之标准输入输出
  12. linux device drivers ch03
  13. PS学习之动态表情制作
  14. [转][C#]手写 Socket 服务端
  15. 高通平台读写nv总结
  16. kotlin-2(IdeaIU-2018.2汉化破解)
  17. cocos2d-x学习记录2——CCAction动作
  18. 用Parallel.For()和Parallel.For&lt;TLocal&gt;()方法实现并行运行迭代
  19. 模块讲解----random模块(随机取值)
  20. 【51nod-1432】独木舟

热门文章

  1. shell变量赋值 不能有空格的原因
  2. Windows Store App 关键帧动画
  3. Windows Store App 过渡动画
  4. iOS开发多线程篇—NSOperation简单介绍
  5. 学习Django
  6. build.xml详解
  7. NPOI 操作Excel
  8. iOS 视频直播
  9. tomcat简单文服
  10. Soufun_News