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

首先反转一个字符串:

基本思路是变成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();
}

(C#) 反转字符串,反转一个句子中单词。的更多相关文章

  1. 翻转句子中单词的顺序 C语言

    输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变.句子中单词以空格符隔开. 为简单起见,标点符号和普通字母一样处理. 比如将"I am a student"转化为&q ...

  2. H面试程序(4):翻转句子中单词的顺序 .

    题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变. 句子中单词以空格符隔开.为简单起见,标点符号和普通字母一样处理. 例如输入“I am a student.”,则输出“stude ...

  3. 7.翻转句子中单词的顺序[ReverseWordOrderInSentence]

    [题目] 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变.句子中单词以空格符隔开.为简单起见,标点符号和普通字母一样处理. 例如输入“I am a student.”,则输出“stud ...

  4. IT公司100题-10-翻转句子中单词的顺序

    问题描述: 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变. 句子中单词以空格符隔开.为简单起见,标点符号和普通字母一样处理. 例如输入“Hello world!”,则输出“world ...

  5. 【c++】计算句子中单词的平均长度

    Description 编程输入一行文本,计算这行文本的单词平均长度.假设每个单词用至少一个空格或者标点(英文逗号.句号)隔开.使用C++ string类型. Input 输入一行文本,不包含数字 O ...

  6. php sprintf() 函数把格式化的字符串写入一个变量中。

    来源:https://blog.csdn.net/zxh1220/article/details/79709207 HP sprintf() 函数用到的参数 printf — 输出格式化字符串 spr ...

  7. leetCode题解之判断一个句子中的字符和数字是否构成回文

    1.问题描述 Given a string, determine if it is a palindrome, considering only alphanumeric characters and ...

  8. 代码随想录第八天 |344.反转字符串 、541. 反转字符串II、剑指Offer 05.替换空格 、151.翻转字符串里的单词 、剑指Offer58-II.左旋转字符串

    第一题344.反转字符串 编写一个函数,其作用是将输入的字符串反转过来.输入字符串以字符数组 s 的形式给出. 不要给另外的数组分配额外的空间,你必须原地修改输入数组.使用 O(1) 的额外空间解决这 ...

  9. 算法之--字符串反转【python实现】

    题目描述 给定一个字符串,要求把字符串前面的若干个字符移动到字符串的尾部,如把字符串“abcdef”前面的2个字符'a'和'b'移动到字符串的尾部,使得原字符串变成字符串“cdefab”.请写一个函数 ...

随机推荐

  1. NSComparisonResul、NSNotFound、NSEnumerationOptions......的用处

    NSNotFound 定义一个值,用于指示请求项找不到或不存在.Defines a value that indicates that an item requested couldn’t be fo ...

  2. JQ判断屏幕宽度

    <script> if (screen.width < 768){....} </script>

  3. Eclipse 常用用法

    搞了很多年的.NET,  最近开始搞Eclipse.    刚开始使用 Eclipse,  发现  Eclipser 远没有Visual Stuido  强大.  所以先把Eclipse常用的用法总结 ...

  4. 【matlab】MATLAB程序调试方法和过程

    3.8  MATLAB程序的调试和优化 在MATLAB的程序调试过程中,不仅要求程序能够满足设计者的设计需求,而且还要求程序调试能够优化程序的性能,这样使得程序调试有时比程序设计更为复杂.MATLAB ...

  5. iOS6的旋屏控制技巧

    在iOS5.1 和 之前的版本中, 我们通常利用 shouldAutorotateToInterfaceOrientation: 来单独控制某个UIViewController的旋屏方向支持,比如: ...

  6. FileWriter和FileReader简单使用

    FileWriter和FileReader使用 package com.main.test; import java.io.FileNotFoundException; import java.io. ...

  7. Unity3D实现摄像机视野的拉远拉近和跟随主角旋转效果

    在Unity官网教程SurvivalShooter(恶魔射手)中,只处理了主角跟随鼠标旋转,摄像机视野并没有旋转或通过滚轮实现视野的拉远拉近,一下是我的实现方法.   在教程中,主角的移动是通过    ...

  8. 【LeetCode OJ】Flatten Binary Tree to Linked List

    Problem Link: http://oj.leetcode.com/problems/flatten-binary-tree-to-linked-list/ The problem is ask ...

  9. SQL SERVER 2008配置Database Mail –用SQL 数据库发邮件

    SQL SERVER 2008配置Database Mail –用SQL  数据库发邮件 https://blogs.msdn.microsoft.com/apgcdsd/2011/06/28/sql ...

  10. PCL中的类

    1. PCLBase pcl_base.h中定义了PCL中的基类PCLBase,PCL中的大部分算法都使用了其中的方法. PCLBase实现了点云数据及其索引的定义和访问. 两个主要的变量input_ ...