.net面试题及答案1

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

答:a=a+b;b=a-b;a=a-b;

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

  调用:

       Public static void Main()

       {

            //List<int>list = new List<int>() { 1, -93, 9, 723, 4, 92, 79, 13, 34, 29, 64, 3,81, 3, -69 };

            int[]list1 = { 6, 5, 2, 9, 7, 4, 0 };

            list=list1.ToList();

            iRunTimes = 0;

            QuickSort(list, ref iRunTimes);

            int[]list2 = list.ToArray();

       }

     

        static void QuickSort(List<int> intList,ref int RunTimes)
        {
            if (intList.Count <= 1) return;

            List<int> less = new List<int>();
            List<int> more = new List<int>();
            int iIndex0 = intList[0];

            for (int i = 1; i < intList.Count; i++)
            {
                RunTimes++;

                if (intList[i] > iIndex0)
                    more.Add(intList[i]);
                else
                    less.Add(intList[i]);
            }

            intList.Clear();
            QuickSort(less, ref RunTimes);
            intList.AddRange(less);
            intList.Add(iIndex0);
            QuickSort(more, ref RunTimes);
            intList.AddRange(more);
        }


 

3,  简述面向对象的多态的特性及意义

多态特性:在一个类中,存在2个或2个以上的方法,方法名相同,而参数类型与数目不同。

意义:多态是类为方法提供的不同实现方法的能力,简化设计过程,提供兼容性维护。

4,  Session喜欢丢值且占内存,cookies不安全,请问什么方法可替代这2种方法?

可以使用Profile,持久化到数据库,不占内存,而且也不会丢失.

用viewState/在服务端实现缓存

5,  对数据的并发采用什么比较好?

更新前检查,使用数据库事务

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

在v_s表里建触发器,当有数据写入时,自动更新D_E表

不能互访的话,那只能通过两个表都能访问的一个表解决了

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

此sql语法本身就不对。B 为数据库,没有提供表名,写不出来

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

1):数据库表空间不足,因为Oracle必须指定表空间的大小   更改表空间大小,如果装有双机热备则必须对物理存贮文件进行手工更改   
2):表死锁   采用脚本形式对表解锁   

3):监听丢失,重启监听解决

9,  算法分析

AH 20060625 12 44 01 CAD001

AH 20060625 12 44 01 CAD001

AH 20060625 13 44 02 CAD001

AH 20060625 13 44 03 CAD001

说明:第2列表示日期,第3列表示温度,第4列表示水位,第5列表示流量,第6列表示水位测站编码,每一列表示一个字段

很明显,第1条数据和第2条数据重复,然而数据表中有主键和外键的约束,是不允许有重复的数据存在的,请构造算法将重复的数据Del掉

 

Select distinct * into #tmp from tableName

Drop table tableName

Select * into tableName from #tmp

Drop table #tmp

 

10, javascript算法

已知a,b,现在点鼠标a会向b流动,鼠标停,a会停下来

请实现“跑步算法”

<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.οnlοad=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.οnmοusedοwn=function() 
{ 
  if(id==0) 
  id=setInterval("moveObj()",intval); 
} 

document.οnmοuseup=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>


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值