面试中常问的.NET算法问题
1.产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复
这个随后会继续添加,并在整理一份.net其他方面的面试问题。
1
//产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复。
2
public void Sort()
3
{
4
int[] myArr = new int[100];
5
ArrayList myList = new ArrayList();
6
Random rnd = new Random();
7
while (myList.Count<100)
8
{
9
int num = rnd.Next(1, 101); //必须大于等于最小的下界;小于最大的上界
10
if (!myList.Contains(num))
11
{
12
myList.Add(num);
13
}
14
}
15
for (int i = 0; i < 100; i++)
16
{
17
myArr[i] = (int)myList[i];
18
Response.Write("第" + i + "个数为:"+myArr[i] + "<br>");
19
}
20
}
2.一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第40位数是多少, 用C#递归算法实现
//产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复。 2
public void Sort()3
{4
int[] myArr = new int[100];5
ArrayList myList = new ArrayList();6
Random rnd = new Random(); 7
while (myList.Count<100)8
{9
int num = rnd.Next(1, 101); //必须大于等于最小的下界;小于最大的上界10
if (!myList.Contains(num))11
{12
myList.Add(num);13
}14
}15
for (int i = 0; i < 100; i++)16
{17
myArr[i] = (int)myList[i];18
Response.Write("第" + i + "个数为:"+myArr[i] + "<br>");19
}20
} 1
// 一列数的规则如下: 1、1、2、3、5、8、13、21、34
求第30位数是多少, 用递归算法实现
2
public int Foo(int i) //斐波那契数列
3
{
4
if (i <= 0)
5
return 0;
6
else if (i > 0 && i <= 2)
7
return 1;
8
else
9
return Foo(i - 1) + Foo(i - 2);
10
}
// 一列数的规则如下: 1、1、2、3、5、8、13、21、34
求第30位数是多少, 用递归算法实现2
public int Foo(int i) //斐波那契数列3
{4
if (i <= 0)5
return 0;6
else if (i > 0 && i <= 2)7
return 1;8
else9
return Foo(i - 1) + Foo(i - 2); 10
}这个随后会继续添加,并在整理一份.net其他方面的面试问题。

浙公网安备 33010602011771号