您的位置:首页 > 房产 > 建筑 > 公司官网设计模板_网页制作教程代码_网络营销方案3000字_网站推广的渠道有

公司官网设计模板_网页制作教程代码_网络营销方案3000字_网站推广的渠道有

2024/12/23 15:47:42 来源:https://blog.csdn.net/weixin_47492910/article/details/144089933  浏览:    关键词:公司官网设计模板_网页制作教程代码_网络营销方案3000字_网站推广的渠道有
公司官网设计模板_网页制作教程代码_网络营销方案3000字_网站推广的渠道有

结构体排序(数组)

  • 1 示例
    • 1.1 以PointF为例展示效果
    • 1.2 运行结果展示
  • 2实际运用
    • 2.1 创建结构体
    • 2.2 调用示例
    • 2.3 运行结果展示

1 示例

1.1 以PointF为例展示效果

private void button1_Click(object sender, EventArgs e)
{Random random = new Random();List<PointF> list = new List<PointF>();for (int i = 0; i < 10; i++){list.Add(new PointF(i, random.Next(1, 100)));}var listSortMaxToMin = list.ToList();listSortMaxToMin.Sort(CompareMaxToMin);var listSortMinToMax = list.ToList();listSortMaxToMin.Sort(CompareMinToMax);}private static int CompareMaxToMin(PointF p1, PointF p2)
{if (p1.Y == p2.Y)return 0;else if (p1.Y < p2.Y)return 1;else{return -1;}
}private static int CompareMinToMax(PointF p1, PointF p2)
{if (p1.Y == p2.Y)return 0;else if (p1.Y < p2.Y)return 1;else{return -1;}
}

1.2 运行结果展示

在这里插入图片描述

2实际运用

2.1 创建结构体

public struct MyPoint
{public double X;public double Y;public MyPoint(double x,double y){X = x;Y = y;}
}

2.2 调用示例

/// <summary>
/// 获取(元素相互匹配)两个数组中,arr2元素值最大的count个值对应的的arr1元素
/// </summary>
public void GetMostValue(double[] arr1, double[] arr2, uint count, out List<MyPoint> result)
{result = new List<MyPoint>();if (arr1 == null) throw new Exception("arrX不可为null");if (arr2 == null) throw new Exception("arrY不可为null");if (arr1.Length != arr2.Length) throw new Exception("数组arrX和arrY的元素总数不同");if (arr1.Length < count) throw new Exception("数组元素数不同不可小于count");List<MyPoint> list = new List<MyPoint>();int length = arr1.Length;for (int i = 0; i < length; i++){list.Add(new MyPoint(arr1[i], arr2[i]));}list.Sort((p1, p2) =>{if (p1.Y < p2.Y) return 1;if (p1.Y > p2.Y) return -1;return 0;});for (int i = 0; i < count; i++){result.Add(list[i]);}
}

2.3 运行结果展示

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com