using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace _08求数组的最大值
{
public delegate int DelCompare(object o1, object o2);
class Program
{
static void Main(string[] args)
{
object[] nums = { , , , , , , };
object[] names = { "张三", "李FatSoFat shit", "王五" }; object[] pers = { new Person() { Name = "张三", Age = }, new Person() { Name = "李四", Age = }, new Person() { Name = "王五", Age = } }; //object:任意传任意类型
//object[]:只能object类型的数组
//object max = GetMax(nums, C1);
//object max = GetMax(names, C2);
//object max = GetMax(pers, C3);
//Console.WriteLine(((Person)max).Age);
//Console.WriteLine(((Person)max).Name);
//Console.ReadKey(); object max = GetMax(names, (o1, o2) => { return ((string)o1).Length - ((string)o2).Length; });
Console.WriteLine(max); object max2 = GetMax(pers, (o1, o2) => { return ((Person)o1).Age - ((Person)o2).Age; });
Console.WriteLine(((Person)max2).Name);
Console.WriteLine(((Person)max2).Age);
Console.ReadKey(); } static object GetMax(object[] nums, DelCompare del)//外面传进来一个比较的方式
{
object max = nums[];
for (int i = ; i < nums.Length; i++)
{
//委托 : max-nums[i]
if (del(max, nums[i]) < )//比较的方式 if(nums[i]>max)
{
max = nums[i];
}
}
return max;
} //static int C1(object o1, object o2)
//{
// int n1 = (int)o1;
// int n2 = (int)o2;
// return n1 - n2;
//} //static int C2(object o1, object o2)
//{
// string s1 = (string)o1;
// string s2 = (string)o2;
// return s1.Length - s2.Length;
//}
//static int C3(object o1, object o2)
//{
// Person p1 = (Person)o1;
// Person p2 = (Person)o2;
// return p1.Age - p2.Age;
//} #region MyRegion
//static object GetMax(object[] names)
//{
// object max = names[0];
// for (int i = 0; i < names.Length; i++)
// {
// if (names[i].Length > max.Length)
// {
// max = names[i];
// }
// }
// return max;
//}
//static object GetMax(object[] pers)
//{
// object pMax = pers[0];
// for (int i = 0; i < pers.Length; i++)
// {
// if (pers[i].Age > pMax.Age)
// {
// pMax = pers[i];
// }
// }
// return pMax;
//}
#endregion } class Person
{
public int Age { get; set; }
public string Name { get; set; }
}
}

c# 求数组的最大值的更多相关文章

  1. js求数组的最大值--奇技淫巧和笨方法

    写这篇文章的原因 我目前做的项目很少用到算法,于是这方面的东西自然就有点儿生疏.最近的一次编码中遇到了从数组中获取最大值的需求,当时我不自觉的想到了js的sort()函数,现在想来真是有些“罪过”,当 ...

  2. YTU 2642: 填空题:类模板---求数组的最大值

    2642: 填空题:类模板---求数组的最大值 时间限制: 1 Sec  内存限制: 128 MB 提交: 646  解决: 446 题目描述   类模板---求数组的最大值    找出一个数组中的元 ...

  3. 使用JavaScript·求数组的最大值和最小值

    前言  在数组中并没有提供arr.max()和arr.min()这样的方法.那么是不是可以通过别的方式实现类似这样的方法呢?那么今天我们就来整理取出数组中最大值和最小值的一些方法.   法一:其实利用 ...

  4. 【RMQ问题】求数组区间最大值,NYOJ-1185-最大最小值

    转自:http://blog.csdn.net/lilongherolilong/article/details/6624390 先挖好坑,明天该去郑轻找虐 RMQ(Range Minimum/Max ...

  5. C#中求数组的子数组之和的最大值

    <编程之美>183页,问题2.14——求子数组的字数组之和的最大值.(整数数组) 我开始以为可以从数组中随意抽调元素组成子数组,于是就有了一种想法,把最大的元素抽出来,判断是大于0还是小于 ...

  6. 求数组的最小数、最大值,求一组数的平均数,sort函数详解,类数组转数组

    求数组的最小值和最大值 //求数组当中最大值和最小值 var arr=[3,2,6,1,45,23,456,23,2,6,3,45,37,89,30]; //第一种方法 根据排序方法来求最大值和最小值 ...

  7. JAVA 求数组中的最大值

    package Code411;//求数组的最大值public class CodeArrayMax { public static void main(String[] args) { int ar ...

  8. class 3 求数组中的最大值(单元测试)

    1.问题引出: int Largest(int list[], int length) { int i,max; ; i < (length – ); i ++ ) { if(list[i] & ...

  9. 【编程题目】一个整数数组,长度为 n,将其分为 m 份,使各份的和相等,求 m 的最大值★★ (自己没有做出来!!)

    45.雅虎(运算.矩阵): 2.一个整数数组,长度为 n,将其分为 m 份,使各份的和相等,求 m 的最大值 比如{3,2,4,3,6} 可以分成 {3,2,4,3,6} m=1; {3,6}{2,4 ...

随机推荐

  1. 【转】windows下mysql5.1忘记root密码解决方法

    步骤如下:1.停止mysql服务(以管理员身份,在cmd命令行下运行) net stop mysql D:\>net stop mysql MySQL 服务正在停止. MySQL 服务已成功停止 ...

  2. bootstrap 设置表格固定宽度 内容换行

    在项目中开发的时候用的bootstrap,但是有些表格的内容 会显示的很长 那么我第一时间想到的就是 修改td或者th的width,但是我设置了 之后不起作用 于是百度找到了解决方法: 学习源头: h ...

  3. FPGA论剑(续)

    25年之后,第二次华山论剑之时,天下第一的王重阳已然仙逝,郭靖少年英杰刚过二十岁,接东邪黄药师.北丐洪七公300招不败,二人默认郭靖天下第一.南帝段智兴因为出家,法号“一灯”,早已看破名利,故没有参加 ...

  4. FPGA前世今生(四)

    前几期我们一直介绍FPGA内部资源,今天我们将用最后的篇幅来介绍剩下的内部资源部分,结束我们FPGA的前世今生.之所以起名字为FPGA前世今生,其实就是介绍一下FPGA内部资源,前世的内部结构资源就不 ...

  5. PCIE接口的说明

    https://blog.csdn.net/u013253075/article/details/80835489

  6. 微信小程序生成太阳码

    微信小程序生成太阳码 https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=access_token 必须通过POST提交 而且参数 ...

  7. Linux - 对文件和目录的权限管理

    对文件的权限管理 ls -l,也可以用 ll 命令查看文件权限的相关信息 第一列“-rw-r--r--.”为权限信息,权限信息的最后一个点表示为在安全环境下创建的 第二列“1”为硬链接数,第三列“ro ...

  8. msf上MS-2017-010(Eternalblue)的复现

    目标主机:192.168.220.148,系统为Microsoft Windows Server 2008 R2 Datacenter,开启了445端口 开启msf root@sch01ar:~# m ...

  9. EF中新建表和关联表的方法

    以机场表为例 private static AIRPORT_HELIPORTManager AirportHeliportManager => ManagerFactory.Instance.A ...

  10. 并发模型(一)——Future模式

    多线程开发可以更好的发挥多核cpu性能,常用的多线程设计模式有:Future.Master-Worker.Guard Susperionsion.不变.生产者-消费者 模式: jdk除了定义了若干并发 ...