zoukankan      html  css  js  c++  java
  • C# lambda 实现 Ascii 排序

                var dir = new Dictionary<string, string>();
                dir.Add("channelId", "1");
                dir.Add("gameid", "1");
                dir.Add("game_id", "1");
                dir.Add("orderStatus", "1");
                dir.Add("order_no", "1");

                Console.WriteLine(String.Join("&", dir.OrderBy(a => a.Key, new AsciiCompareStrings()).Select(a => string.Format("{0}={1}", a.Key, a.Value))));

    //channelId=1&game_id=1&gameid=1&orderStatus=1&order_no=1
                Console.WriteLine(String.Join("&", dir.OrderBy(a => a.Key).Select(a => string.Format("{0}={1}", a.Key, a.Value))));

    //channelId=1&game_id=1&gameid=1&order_no=1&orderStatus=1

           /// <summary>
            /// ascii码排序
            /// </summary>
            public class AsciiCompareStrings : IComparer<string>
            {
                /// <summary>
                /// 以ascii码从小到大排序
                /// </summary>
                /// <param name="s1"></param>
                /// <param name="s2"></param>
                /// <returns></returns>
                public int Compare(string s1, string s2)
                {
                    return string.CompareOrdinal(s1, s2);
                }
            }

    ***************************************数组排序实现****************************************


            //将集合key以ascii码从小到大排序
            public static Dictionary<string, string> AsciiDictionary(Dictionary<string, string> sArray)
            {
            
                Dictionary<string, string> asciiDic = new Dictionary<string, string>();
                string[] arrKeys = sArray.Keys.ToArray();
                Array.Sort(arrKeys, string.CompareOrdinal);
                foreach (var key in arrKeys)
                {
                    string value = sArray[key];
                    asciiDic.Add(key, value);
                }
                return asciiDic;
            }

  • 相关阅读:
    ACM: HDU 2544 最短路-Dijkstra算法
    ACM: HDU 1874 畅通工程续-Dijkstra算法
    ACM: SGU 101 Domino- 欧拉回路-并查集
    ACM: HDU 1285 确定比赛名次
    ACM: hdu 2647 Reward -拓扑排序
    ACM: hdu 1811 Rank of Tetris
    ACM: poj 1094 Sorting It All Out
    ACM: hihicoder #1174 : 拓扑排序·一 STL- queue
    ACM: CodeForces 140A New Year Table-数学几何
    POJ 3122 Pie 二分枚举
  • 原文地址:https://www.cnblogs.com/change4now/p/9400222.html
Copyright © 2011-2022 走看看