10

.Net软件工程师面试题及答案(精选)

 3 years ago
source link: https://www.cnblogs.com/tuyile006/archive/2007/03/20/681154.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

.Net软件工程师面试题及答案(精选)

.Net软件工程师面试题及答案

1.a=10,b=15,在不用第三方变量的前提下,把a,b的值互换。

2. 已知数组int[] max={6,5,2,9,7,4,0};用快速排序算法按降序对其进行排列,并返回数组。

3. 请简述面向对象的多态的特性及意义。

4. session喜欢丢值且占内存,Cookis不安全,请问用什么办法代替这两种原始的方法。

5. 对数据的并发采用什么办法进行处理较好。

6. 已知Oracle数据库有GD和ZS两个数据库,GD数据库v_s表有数据写入时,从v_s表中提取最新数据到ZS数据库的D_E表中。请问用什么办法解决这一问题?如果又碰到不能互访的问题时,又用什么办法解决?

7. 已知Oracle数据库a,b
现在在a用户权限下,访问b数据库sql语句为select a.* From b a,请改正这一句Sql的写法。

8. 当对数据库进行海量级的数据插入时,数据库出现报错,错误原因可能有哪些,以你的经验谈谈你的解决办法。

9. 算法分析
AH 20060625 12 44 01 CAD001
AH 20060625 12 44 01 CAD001
AH 20060625 13 44 02 CAD001
AH 20060625 14 44 03 CAD001
说明:第二列表示日期,第三列表示温度,第四列表示水位,第五列表示流量,第6列表示水位测站编码,每一列表示一个字段
很明显第一条数据和第二条数据重复,然数据表中有主键和外键的约束,是不允许有重复的数据存在的,请构造算法将重复的数据Del掉。

10.  javascript算法
已知a,b,现在点鼠标a会向b游动,鼠标停,a会停下来
请实现"跑步算法"。

答案:

1.
a=a+b;
b=a-b;
a=a-b;
据说还可以这样:a^=b^(b^=a^b); 不了解是什么原理

2.
public class TestQuickSort {

private int[] array = null;
private void quickSort(int lowest, int highest) {
if (array == null || lowest < 0 || lowest >= highest
|| highest >= array.length) {
return;
}
int low = lowest;
int high = highest;
int key = low++;
for (; low <= high;) {
if (key < high) {
if (array[key] > array[high]) {
array[high] = array[key] + (array[key] = array[high]) * 0;
key = high;
}
high--;
}

if (key > low) {
if (array[key] < array[low]) {
array[low] = array[key] + (array[key] = array[low]) * 0;
key = low;
}
low++;
}
}
quickSort(lowest, key - 1);
quickSort(key + 1, highest);
}

/**
* @param args
*/
public static void main(String[] args) {
TestQuickSort test = new TestQuickSort();
int[] array = {6,5,2,9,7,4,0};
test.array = array;
test.quickSort(0, array.length - 1);
int length = test.array.length;
for (int i = 0; i < length; i++) {
System.out.println(test.array[i]);
}
}
}
快速排序是综合性能最好的内部排序算法!

3.

多态:面向对象的语言使用虚方法表达多态。这就意味着派生类可以有和父类具有同样签名的方法,并且父类可以调用派生类的方法。在C#中,必须使用virtual关键字才能使方法被父类调用。这使得一个对象在不同的环境中有不同的动作形态。

4.

用VIEWSTATE /Profile/自己在服务器端实现个Cache

5.

答可以控制连接池的连接数量
条件好的话 可以用负载平衡

6.

使用触发器,在GD数据库v_s表上建insert触发器,当有新数据加入时,同时写数据到ZS数据库的D_E表中。

如果不能互访,则还是用触发器先保存最新加入的数据到临时表中,用应用程序将数据转移到ZS数据库。

7.

Select * from b.table1

8.

对于oracle数据库来说,可能出现的问题包括:
1. 回滚区间空间不足 ---解决方法,增加表空间
2. 数据表空间不足 ---- 增加数据表空间
3. 表空间不足 ---- 增加表空间(oracle数据表有空间限制)
4. 临时表空间不足 --- 因为计算索引使用临时表空间,增加表空间或者暂时不使用索引,数据导入完毕再新建索引
5.另外一些原因,主要是垃圾数据造成的,比如外键匹配,主键冲突,单一索引冲突等。

9.
alter table 表 add ID int identity(1,1)
delete from 表
where newfield not in
(
select top 1 ID from 表 group by 日期,温度,水位,流量,水位测站编码
)
alter table 表 drop column ID

10.

<html>
<head>
<title>aa</title>
<script   language= "javascript" type="text/javascript">
<!--
var   obj1=obj2=p1=p2=null;
var   id=0; //设置调用ID
var   intval   =   10; //单位豪秒,控制调用moveObj()的周期
var   step   =   5; //每次移动的像素,控制移动的速度
window.onload=function()
{
obj1=document.getElementById("obj1");
obj2=document.getElementById("obj2");
p1={x:obj1.style.pixelLeft,y:obj1.style.pixelTop};
p2={x:obj2.style.pixelLeft,y:obj2.style.pixelTop};
}
function   moveObj()
{
if(p1.x <p2.x)
obj1.style.pixelLeft=p1.x+=step;
if(p1.y <p2.y)
obj1.style.pixelTop=p1.y+=step;
}
document.onmousedown=function()
{
if(id==0)
id=setInterval("moveObj()",intval);
}
document.onmouseup=function(){clearInterval(id);id=0;}
//-->
</script>
</head>
<body>
按下鼠标a移动,释放鼠标移动停止,再按下则继续移动。
<img   src= "a.ico"   id= "obj1"   alt= "a"   style=
"position:absolute;left:100px;top:100px; "/>
<img   src= "b.ico"   id= "obj2"   alt= "b"   style=
"position:absolute;left:500px;top:500px; "/>
</body>
</html>

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK