最近一直在面试,每次面试前也不怎么准备,虽说碰到的题大部分都很简单的,但是在现场答题的时候由于自己紧张脑子就空了,一些题答的不是很好,所以只有每次回来的时候才能好好想想怎么答;

题大部分还是挺简单的,就先记录几个脑子里记住的

一、创建一个长度为100的数组,随机插入1-100不重复的数字。这道题刚一上来就觉得应该是这样的,当时也是这样写的:

static int[] Fun()
{
int[] arr = new int[];
int index = ;
Random ran = new Random();
while (index < )
{
int temp = ran.Next(, );
if (!arr.Contains(temp))
arr[index++] = temp;
}
return arr;
}

后来回家想想,这样写不是很好,因为每次随机出一个数后,判断数组是否包含这个,不包含的话才插入数组。这样的话随着数组中包含的数字越来越多,要判断的次数也会越来越多。改一下吧:

static int[] Fun(int begin, int len)
{
ICollection<int> oldArr = new List<int>();
for (int i = begin; i <= len; i++)
{
oldArr.Add(i);
} int[] newArr = new int[len - begin + ];
Random ran = new Random();
int index = ;
while (oldArr.Count() > )
{
int temp = oldArr.ElementAt(ran.Next(, oldArr.Count()));
newArr[index++] = temp;
oldArr.Remove(temp); }
return newArr;
}

先生成一个指定范围的集合,随机取集合的下标加到数组里,再删除集合里的元素。这样不用那么多判断,遍历两次就行了。

二、1-2+3-4+5。。。+m 求这个表达式的结果,用多种思路

笔试的时候只写出了这种,当时脑子一片空白,递归的死活都不知道怎么写。

static int Fun2(int Num)
{
int i = ;
int result = ;
while (Num > i)
{
if (i % == )
result += ++i;
else
result -= ++i;
}
return result;
}

回家想想我怎么当时那么蠢,这么简单的递归都没写出来。。

static int Fun(int Num)
{
if (Num == )
return ; if (Num % == )
return Fun(Num - ) - Num;
else
return Fun(Num - ) + Num;
}

三、下面的类B 在实例化是,会打印出什么结果?

class A
{
public A()
{
Display();
} public virtual void Display(){}
} class B : A
{
int x = ;
int y;
public B()
{
y = ;
} public override void Display()
{
Console.Write(string.Format("x={0},y={1}", x, y));
} }

结果是 x=1,y=0;类在实例化时会先调用父类构造函数,也就是说,先调用最顶端的父类的构造函数,然后是依次调用子类构造函数;在这道题中是先执行A的构造函数。A的构造函数调用Display方法,因为此方法被子类重写,所以调用的重写后的。此时X=1,由于还没调用B的构造函数所以Y的值是分配栈空间时默认的0。所以最终的结果是x=1,y=0

笔试时碰到的题很多,大部分都是网上被转发烂的,公司自己出题的很少。今天先记录这三道题,以后想起来了再继续;

.NET 笔试分享的更多相关文章

  1. 优秀的java 社区

    并发编程网 - ifeve.com InfoQ - 促进软件开发领域知识与创新的传播开源中国 - 找到您想要的开源项目,分享和交流IBM developerWorks 中国 : IBM's resou ...

  2. 国内有哪些好的JAVA社区

    转载自 https://www.zhihu.com/question/29836842#answer-13737722 并发编程网 - ifeve.com 强烈推荐 ImportNew - 专注Jav ...

  3. 国内有哪些质量高的JAVA社区?

    国内有哪些质量高的JAVA社区? 转自:http://www.zhihu.com/question/29836842#answer-13737722 并发编程网 - ifeve.com 强烈推荐 Im ...

  4. IBM中国研究院、SAP、网易游戏、IBM2015应届生招聘笔试面试问题分享

    IBM中国研究院实习生 早在今年4月份.我面试的是IBM中国研究院的实习生岗位.主要是自然语言处理和语义网方向.那时我还在香港上学,两个考官对我进行的是电话面试,大概持续半个多小时,首先是我的自我介绍 ...

  5. 纯干货分享!2020阿里java岗笔试面试题总结(附答案)

    前言 2020金九银十马上结束,现为大家整理了这次金九银十面试阿里的面试题总结,都是我从朋友那拿到的面试真题,话不多说,满满的干货分享给大家! int a=10是原子操作吗? 是的.  注意点: i+ ...

  6. 【外企测试面试、笔试】分享下历时8轮、30k+的外企面试全过程

    外企福利 薪酬体系完善(期权.股票等),定期薪酬市场调研,紧跟一线互联网大厂 加班很少很少 年假多,15-20天 国外免费旅游.旅游金 免费培训英语(还可能出国培训) 定期技术交流 免费零食 定期团建 ...

  7. 2016网易春招Java在线笔试回忆录

    别看是在线笔试,但是非常严格,全称窗口不得最小化和关闭,转移,全称需要打开摄像头监控,使用草稿纸需要摄像头对准……反正2个小时,题量在那儿摆着,有作弊的功夫不如好好做做最后的编程题呢……网易不让泄漏原 ...

  8. BAT及各大互联网公司2014前端笔试面试题--Html,Css篇

    很多面试题是我自己面试BAT亲身经历碰到的.整理分享出来希望更多的前端er共同进步吧,不仅适用于求职者,对于巩固复习前端基础更是大有裨益. 而更多的题目是我一路以来收集的,也有往年的,答案不确保一定正 ...

  9. BAT及各大互联网公司2014前端笔试面试题--JavaScript篇

    很多面试题是我自己面试BAT亲身经历碰到的.整理分享出来希望更多的前端er共同进步吧,不仅适用于求职者,对于巩固复习js更是大有裨益. 而更多的题目是我一路以来收集的,也有往年的,答案不确保一定正确, ...

随机推荐

  1. [c#]asp.net开发微信公众平台(8)微信9大高级接口,自定义菜单

    前7篇把最基础的消息接收和回复全做完了,  也把高级接口的入口和分拆处理写好了空方法,  此篇接着介绍微信的9大高级接口, 并着重讲解其中的自定义菜单. 微信9大接口为: 1.语音识别接口 2.客服接 ...

  2. ORACLE基本SQL语句-用户及建表篇

    一.用户相关SQL语句 /*新建用户*/create user ; 说明:SA用户名,2013密码 /*授权connect,resource给用户sa*/grant connect,resource ...

  3. 解决SurfaceView设置透明造成覆盖其他组件的替代方案

    之前在项目里面绘制摇杆圆盘使用SurfaceView来实现,同时设置SurfaceView透明,但是这样会造成SurfaceView的组件会覆盖其他的组件,一般情况没有关系,而不一般的情况就是有类似上 ...

  4. sql server 数据库附加时程序集错误

    在数据库detach和attach的过程中,如果在建立程序集的时候选择的权限集是无限制,并且在建立程序集的时候和后来attach的时候 采用的不是同一个用户,就可能造成部分功能无法使用.原因是由于在选 ...

  5. 表单验证提交——submit与button

    之前做东西接触过表单验证提交,但是都是为了完成工作,做完就做完了,没有注过表单验证提交有几种方法,各方法都有啥区别.今天瞎折腾了一下,对他们研究了一下,如下是我个人的理解: submit: 从字面上看 ...

  6. smarty练习:数据的增删改

    根据数据库中的三张表格:timu,xuanxiang,kemu来进行数据的增删改查,并且使用smarty模版将前端与后台分离开来 三张表格: 主页面后台 main.php: <?php //引入 ...

  7. Ajax实现三级联动(0520)

    查询数据库中的chinastates表,通过父级代号查询相应省市区. 实现界面: 在js页面实现三级联动 在JQuery中调用Ajax方法(引用JQuery文件一定放在最上面) 用插件的形式,创建三个 ...

  8. While reading XXX pngcrush caught libpng error: N

    错误一:   While reading /XXX/XXX/XXX/img1.png pngcrush caught libpng error:   Not a PNG filCould not fi ...

  9. Android4.0强制横屏竖屏

    Android的启动默认是横屏或者竖屏我们的TV本来是横屏显示,但是有客户竟然要竖屏显示,昨天快下班收到的需求,竟然说7.19就要搞定.思路有2个,一个就是修改LCD的默认输出,但是这个不是我这个水平 ...

  10. 用windows live writer写博客

    用windows live writer写博客了,目前不支持writer的博客,暂时放弃,这正是我用writer写的第一篇内容. 如有知道怎么用weiter配置:凤凰博客.搜狐博客.QQ空间.百度空间 ...