黑马程序员技术交流社区

标题: 同学们抢分拉速来围观 [打印本页]

作者: 苏波    时间: 2013-3-19 22:01
标题: 同学们抢分拉速来围观
用方法实现求任意个数的最大值,用可变(params)数组做




作者: 韦俊琳    时间: 2013-3-19 22:16
沙,,,,,发
作者: 杞文明    时间: 2013-3-19 22:18
我来解答 呵呵呵
作者: 诺言    时间: 2013-3-19 22:22
来个板凳坐坐,坐看分数花落谁家!
作者: 杞文明    时间: 2013-3-19 22:23
  1. public static int Max(params int []a)
  2. {
  3. int max = a[0];
  4.    for(int i=0 ; i<a.Length ; i++)
  5.    {
  6.     if(max<a[i])
  7.      {
  8.       max = a[i];
  9.    }
  10.    }
  11. return max;

  12. }
复制代码

作者: 许庭洲    时间: 2013-3-19 22:24
本帖最后由 许庭洲 于 2013-3-19 22:29 编辑

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Array_max
{
     class Program
    {
        //输出一个任意数组的最大数和索引值
        static int Max(ref int index,params int[] array)//这里是任意的数组所以用params参数
        {
            int max = 0;//给最大值赋值为0
            for(int i=0;i<array.Length;i++)
            {
                if(max<=array)
         
      {                  max=array;//把大的数字赋值给max
                    index=i;//最大数的索引值
                }

               
            }
            return max;
        }
        static void Main(string[] args)
        {
            int max;
            int index = 0;//主意ref必须要初始化,out可以使用未赋值的变量作为参数

            max = Max(ref index,8 , 88, 888, 8888);//调用函数
            Console.WriteLine("最大的数是:{0}",max);
            Console.WriteLine("最大数的索引号是{0}",index);
        }
    }
}
作者: 樊其杰    时间: 2013-3-19 22:30
  1.         public static void main(String[] args) {
  2.                 // TODO Auto-generated method stub
  3.                 int[] a = { 1, 2, 3, 5 };
  4.                 System.out.println(max(a));

  5.         }

  6.         public static int max(int arr[]) {
  7.                 int max = arr[0];
  8.                 for (int i = 0; i < arr.length; i++) {
  9.                         if (max < arr[i])
  10.                                 max = arr[i];
  11.                 }
  12.                 return max;
  13.         }
  14. }
复制代码

作者: 韦俊琳    时间: 2013-3-19 22:32
这是视频里的例子,与其把答案贴出来,还不如建议你再看一下视频。求分啊有木有
作者: 苏波    时间: 2013-3-19 22:35
韦俊琳 发表于 2013-3-19 22:32
这是视频里的例子,与其把答案贴出来,还不如建议你再看一下视频。求分啊有木有 ...

看一遍视频 不如 自己写出来  收获更大
作者: 戴鑫凯    时间: 2013-3-19 22:38
本帖最后由 戴鑫凯 于 2013-3-19 22:46 编辑
  1. public static int MaxNum(params int[] nums)
  2. {
  3.     int max = int.MinValue;
  4.     for(int i = 0 ; i<nums.Length ; i++)
  5.     {
  6.         if(nums[i]>max)
  7.         {
  8.             max= nums[i];
  9.         }
  10.     }
  11.     return max;
  12. }
复制代码
  1. public static int MaxNum(params int[] nums)
  2. {
  3.     for(int i=0;i<nums.Length-1;i++)
  4.     {
  5.         for(int j=0;j<nums.Length-1-i;j++)
  6.         {
  7.             if(nums[j]<nums[j+1])
  8.             {
  9.                 int temp=nums[j];
  10.                 nums[j]=nums[j+1];
  11.                 nums[j+1]=temp;
  12.             }
  13.         }
  14.     }
  15. return nums[0];
  16. }
复制代码

作者: 韦俊琳    时间: 2013-3-19 22:38
苏波 发表于 2013-3-19 22:35
看一遍视频 不如 自己写出来  收获更大

所以你应该自己写,顺便给俺散点分~:lol
作者: 苏波    时间: 2013-3-19 22:44
韦俊琳 发表于 2013-3-19 22:38
所以你应该自己写,顺便给俺散点分~

我 都写了好多遍了  自己付出 的结果才会甜的哦
作者: 苏波    时间: 2013-3-19 23:28
樊其杰 发表于 2013-3-19 22:30

没有 实现功能啊 还用的JAVA代码
作者: 苏波    时间: 2013-3-19 23:32
戴鑫凯 发表于 2013-3-19 22:38

冒泡 都用上了啊呵呵
作者: 何红卫    时间: 2013-3-19 23:32
既然只是求最大值,别的神马快速的算法都是浮云啦,又不是搞排序
  1. public static int MaxNumber(params int[] a)
  2.         {
  3.             int max = a[0];
  4.             foreach (int i in a)
  5.             {
  6.                 if (i > max)
  7.                 {
  8.                     max = i;
  9.                 }
  10.             }
  11.             return max;
  12.         }
复制代码

作者: 宋兴征    时间: 2013-3-20 11:50
  1. static void Main(string[] args)
  2.         {
  3.             int maxValue=GetMax(9, 41, 11, 8, 2, 30);
  4.             Console.WriteLine("最大值是:{0}", maxValue.ToString());

  5.             Console.ReadKey();
  6.         }

  7.         public static int GetMax(params int[] array)
  8.         {
  9.             int maxValue = array[0];
  10.             foreach (int a in array)
  11.             {
  12.                 if (a > maxValue)
  13.                 {
  14.                     maxValue = a;
  15.                 }
  16.             }
  17.             return maxValue;
  18.         }
复制代码

作者: 忆茹既往    时间: 2013-3-21 11:01
{:soso_e113:}houhou




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2