首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

在网上看到一种排序算法,小弟我是初学者,下高手

2012-06-16 
在网上看到一种排序算法,我是菜鸟,弱弱的问下高手这个算法叫什么名字啊!!怎么以前都没怎么看见过?在网上无

在网上看到一种排序算法,我是菜鸟,弱弱的问下高手
这个算法叫什么名字啊!!怎么以前都没怎么看见过?在网上无意看到的,跪求高手......

代码如下:
private int[] GetNum;

/// <summary>
  /// int数组升序排列
  /// </summary>
  /// <param name="NodeNum">源数组</param>
  /// <returns></returns>
  private int[] GetIntListOrderBy(int[] SourceNum)
  {
  GetNum = new int[SourceNum.Length];
  for (int i = 0; i < SourceNum.Length; i++)
  {
  int NewPosion = 0;
  int Num = SourceNum[i];
  for (int j = 0; j < SourceNum.Length; j++)
  {
  if (Num > SourceNum[j])
  NewPosion++;
  else
  continue;
  }
  NextNum(NewPosion, Num);
  }
  return GetNum;
  }

  /// <summary>
  /// 相同的整数后推一位
  /// </summary>
  /// <param name="posion"></param>
  /// <param name="num"></param>
  private void NextNum(int posion, int num)
  {
  if (GetNum[posion] != num)
  GetNum[posion] = num;
  else
  NextNum(posion + 1, num);
  }

[解决办法]
就是冒泡排序的本质,只不过把交换这一块,拿出来单独写了个方法

热点排行