C#   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c# – 将MultiDimensional数组排列为降序或升序大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图将这个多维数组安排为升序或降序.但是,我需要第1列和第2列之间的关系仍然在一起(意味着我需要例如数组[0,1]和数组[0,2]的数据在一起或以某种方式相关.这是我现在的代码.

int[,] time = new int[5,2]{{0,4},{1,5},{5,10},{3,{0,2}};
var sorted = from x in Enumerable.Range(0,time.GetLength(0))
                     from y in Enumerable.Range(0,time.GetLength(1))
                     SELEct new{
                         X = x,Y = y,Value = time[x,y]
                    }into point
                    orderby point.Value descending
                    SELEct point;

这有效,但它将我的所有数据分开.有没有办法在保持第1列和第2列的关系的同时对它们进行排序?

解决方法

听起来您希望将数据存储在多维数组中,但将数组中的每一行保留为单独的原子单元.另外,每个“点”的比较是X,然后是Y.

int[,2] { { 0,4 },{ 1,5 },{ 5,10 },{ 3,{ 0,2 } };

var sorted = from x in Enumerable.Range(0,time.GetLength(0))
                     SELEct new Point()
                     {
                         X = time[x,0],Y = time[x,1]
                     } into point
                     orderby point.X ascending,point.Y ascending 
                     SELEct point;

int[,] sortedTime = new int[5,2];
int index = 0;
foreach (var testPoint in sorted)
{
  Point aPoint = (Point) testPoint;
  sortedTime.SETVALue(aPoint.X,index,0);
  sortedTime.SETVALue(aPoint.Y,1);

  index++;
}

大佬总结

以上是大佬教程为你收集整理的c# – 将MultiDimensional数组排列为降序或升序全部内容,希望文章能够帮你解决c# – 将MultiDimensional数组排列为降序或升序所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。