错误 1 运算符“+”无法应用于“int[]”和“int”类型的操作数 C:\Inetpub\wwwroot\caculate\cacluate\Form4.cs 125 34 cacluate
Code:
int m2 = maxCaculate(xx+middle,yy); //后半部分元素中最大值为M2program:public int maxCaculate(int[] xx,int n)
{
if (n == 0)
{
return xx[0];
}
int middle = n / 2; //前半部分的个数
int yy= n - middle;//后半部分的个数
int m1 = maxCaculate(xx,middle);//前半部分元素中最大值为M1
int m2 = maxCaculate(xx+middle,yy); //后半部分元素中最大值为M2
if (m1 > m2)
{
return m1;
}
else
{
return m2;
} }
Code:
int m2 = maxCaculate(xx+middle,yy); //后半部分元素中最大值为M2program:public int maxCaculate(int[] xx,int n)
{
if (n == 0)
{
return xx[0];
}
int middle = n / 2; //前半部分的个数
int yy= n - middle;//后半部分的个数
int m1 = maxCaculate(xx,middle);//前半部分元素中最大值为M1
int m2 = maxCaculate(xx+middle,yy); //后半部分元素中最大值为M2
if (m1 > m2)
{
return m1;
}
else
{
return m2;
} }
解决方案 »
- 利用DateTimePicker的Value插入SQLServer的一点小疑惑
- 【高分求助】C#动态数组以及字符串处理问题
- c#调用owc11生成柱形统计图问题
- 视频截取
- jmail转发邮件,问题求助
- 请教window media player自动隐藏系统条该如何实现?
- 请问 Oracle数据库在.NET下编程问题,关于Sequence(序列)
- 我在win2000下写了一个项目,安装到XP下,界面上的图标都看不见了,是为何,怎么处理啊?
- 谁知道将控件的Enabled=false时,控件不变灰色。太难看了。
- 用D版练习可以吗?
- datagrid控制列宽
- DataGridView出错,大家帮忙看看呀!
{
return xx[0];
}
后再做一个for循环就可以了。
int m2 = maxCaculate(xx[i]+middle,yy); //后半部分元素中最大值为M2
public static int maxCaculate(int[] xx, int n)
{
int[] temp = new int[n];
Array.Copy(xx, temp, n);
Array.Sort(temp);
return temp[n - 1];
}
错误:
索引超出了数组界限。???????????????????
public static int maxCaculate(int[] xx, int n)
{
int[] temp = new int[n];
Array.Copy(xx, temp, n);
Array.Sort(temp);
return temp[n - 1]; //索引超出了数组界限。
}
public static int maxCaculate(int[] xx, int n)
{
int[] temp = new int[n];
Array.Copy(xx, temp, n);
Array.Sort(temp);
return n == 0? temp[0] : temp[n - 1];
}
int yy= n - middle;//后半部分的个数
int m1 = maxCaculate(xx,middle);//前半部分元素中最大值为M1
int m2 = maxCaculate(xx+middle,yy); //后半部分元素中最大值为M2
中的 int m2 = maxCaculate(xx+middle,yy); 应该怎么改呀?
using System.Text;namespace ConsoleApplication1
{
class Program
{
static int[] test = new int[] { 3, 5, 8, 7, 6, 31, 5, 4 , 9, 8, 16, 2}; static int[] compare(int[] t, int ib, int ie)
{
int[] t1 = new int[(ie - ib) / 2 + 1];
int i = ib;
int j = 0;
for (; i < t.Length-1; i += 2)
{
t1[j++] = t[i] > t[i + 1] ? t[i] : t[i + 1];
}
if (j == t1.Length-1)
t1[j] = t[i];
if (ie == ib)
return t;
else
return compare(t1, 0,t1.Length-1);
} static void Main(string[] args)
{
Console.Write(compare(test, 0, test.Length-1)[0]);
Console.ReadLine();
}
}
}