当前位置: 首页 > news >正文

大型软件公司.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;
b=(a+b)/2;
a=a-b;

还有变态要求,需要代码最短呢。有两个结果:
1) a^=b^(b^=a^b); // 13个字节
2) a=b+(b=a)*0; // 11个字节

2、答案(如果不限定算法,其实可以直接用Array.Sort()方法的)

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]);
}
}
}

不要用冒泡排序法很慢,选择排序好些,但题意是快速排序算法

快速排序算法的基本思想:

快速排序的基本思想是基于分治策略的。对于输入的子序列ap..ar,如果规模足够小则直接进行排序,否则分三步处理:

分解(Divide):将输入的序列ap..ar划分成两个非空子序列ap..aq和aq+1..ar,使ap..aq中任一元素的值不大于aq+1..ar中任一元素的值。 
递归求解(Conquer):通过递归调用快速排序算法分别对ap..aq和aq+1..ar进行排序。 
合并(Merge):由于对分解出的两个子序列的排序是就地进行的,所以在ap..aq和aq+1..ar都排好序后不需要执行任何计算ap..ar就已排好序。 
这个解决流程是符合分治法的基本步骤的。因此,快速排序法是分治法的经典应用实例之一。

算法Quick_Sort的实现:

Pascal实现:
Procedure Quick_Sort(p,r:TPosition;var L:TList); {快速排序}

var

q:TPosition;

begin

if L[p..r]足够小 then Sort(p,r,L) {若L[p..r]足够小则直接对L[p..r]排序}

else

begin

q:=Partition(p,r,L); {将L[p..r]分解为L[p..q]和L[q+1..r]两部分}

Quick_Sort(p,q,L); {递归排序L[p..q]}

Quick_Sort(q+1,r,L); {递归排序L[q+1..r]}

end;

end;


3、答案

面向对象的编程使用了派生继承 以及虚函数机制.
一个本来指向基类的对象指针可以指向其派生类的.并访问从基类继承而来的成员变量和函数.
而虚函数是专门为这个特性设计的,这个函数在每个基类的派生类中都是同一个名字,但函数体却并不一定相同,派生类往往为实现自己的功能而修改这个虚函数.这样用一个指针就能够实现对多种不同的派生类的访问, 并实现其派生类的特定功能(代码 )....

4、答案
用VIEWSTATE
stateserver

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


本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/archive/2010/12/19/1910322.html,如需转载请自行联系原作者

相关文章:

  • Eclipse-Java代码规范和质量检查插件-FindBugs
  • uploadify是通过flash上传,服务器获取type为application/octet-stream
  • 使用putty连接linux
  • 深度讲解 Android 主题层级
  • Percona XtraBackup 实现全备增量备份与恢复【转】
  • 中国的软件人才是靠挖的
  • mvn 主要命令说明
  • Servlet获取ajax数组
  • 小程序测试方案初探
  • 注册界面
  • PDF 补丁丁 0.6.0.3288 版发布(修复“合并文件”功能的文件夹文件排序问题)
  • Python常用的软件包
  • 2017-2018-1 20155229 《信息安全系统设计基础》第五周学习总结
  • 项目管理碎碎念系列之一:干系人管理
  • java动态数组
  • 【译】React性能工程(下) -- 深入研究React性能调试
  • 78. Subsets
  • Angular 响应式表单 基础例子
  • Angular6错误 Service: No provider for Renderer2
  • Apache Spark Streaming 使用实例
  • java中具有继承关系的类及其对象初始化顺序
  • js继承的实现方法
  • quasar-framework cnodejs社区
  • Redis的resp协议
  • Shadow DOM 内部构造及如何构建独立组件
  • webgl (原生)基础入门指南【一】
  • win10下安装mysql5.7
  • 读懂package.json -- 依赖管理
  • 复习Javascript专题(四):js中的深浅拷贝
  • 前端面试总结(at, md)
  • 如何编写一个可升级的智能合约
  • 首页查询功能的一次实现过程
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 探索 JS 中的模块化
  • ​DB-Engines 11月数据库排名:PostgreSQL坐稳同期涨幅榜冠军宝座
  • ​香农与信息论三大定律
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (JS基础)String 类型
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (NSDate) 时间 (time )比较
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (转)ABI是什么
  • (转)Oracle存储过程编写经验和优化措施
  • .CSS-hover 的解释
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .Net CF下精确的计时器
  • .Net Memory Profiler的使用举例
  • .NET/C# 异常处理:写一个空的 try 块代码,而把重要代码写到 finally 中(Constrained Execution Regions)
  • .Net7 环境安装配置
  • .Net程序猿乐Android发展---(10)框架布局FrameLayout
  • .Net下使用 Geb.Video.FFMPEG 操作视频文件
  • /bin/rm: 参数列表过长"的解决办法
  • [ C++ ] STL---string类的模拟实现
  • [ web基础篇 ] Burp Suite 爆破 Basic 认证密码