题解 | #字符串排序#

字符串排序

http://www.nowcoder.com/practice/5190a1db6f4f4ddb92fd9c365c944584

先将所有的字母提取出来放进一个list里 然后对list进行排序,这里使用linq无视大小写 然后对chars进行遍历,是字母的依次替换为list中的元素,不是字母的正常拼接

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleAppTest
{
    public static class Test
    {
        public static void Main()
        {
            string input = Console.ReadLine();
            char[] chars = input.ToCharArray();
            List<char> list = new List<char>();
            foreach (char c in chars)
            {
                if (char.IsLetter(c))
                {
                    list.Add(c);
                }
            }
            list = list.OrderBy(x => char.ToLower(x)).ToList();

            StringBuilder sb = new StringBuilder();
            int index = 0;
            for (int i = 0; i < chars.Length; i++)
            {
                if (char.IsLetter(chars[i]))
                {
                    sb.Append(list[index++]);
                }
                else
                {
                    sb.Append(chars[i]);
                }
            }
            Console.WriteLine(sb.ToString());
        }
    }
}
全部评论

相关推荐

07-18 18:05
门头沟学院 Java
挂了&nbsp;正式批求捞
投递滴滴等公司9个岗位
点赞 评论 收藏
分享
05-29 20:34
门头沟学院 C++
KarlAllen:得做好直接春招的准备。学历差的话,一是面试要求会比学历好的严格不少,二是就算面试通过了也会被排序。总之暑期和秋招对于学历差的就是及其不友好
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务