.NET 笔试分享

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

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

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

static int[] Fun()
{
       int[] arr = new int[100];
       int index = 0;
       Random ran = new Random();
       while (index < 100)
       {
            int temp = ran.Next(1, 101);
            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 + 1];
        Random ran = new Random();
        int index = 0;
        while (oldArr.Count() > 0)
        {
             int temp = oldArr.ElementAt(ran.Next(0, oldArr.Count()));
             newArr[index++] = temp;
             oldArr.Remove(temp);

        }
        return newArr;
}

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

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

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

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

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

static int Fun(int Num)
{
        if (Num == 1)
                return 1;

        if (Num % 2 == 0)
                return Fun(Num - 1) - Num;
        else
                return Fun(Num - 1) + Num;
}

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

class A
{
        public A()
        {
            Display();
        }

        public virtual void Display(){}
}

class B : A
{
        int x = 1;
        int y;
        public B()
        {
            y = 2;
        }

        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 笔试分享,布布扣,bubuko.com

时间: 2024-07-30 13:40:43

.NET 笔试分享的相关文章

腾讯、网易有道和阿里的笔试分享及自我总结

声明:本人Android移动开发岗 腾讯:考的很杂 选择题(25题不定项):考的包括: 编译原理两题, 计算机网络一两题(私网地址), C++若干, IOS开发一两题, 还有二叉树两三题,先后序遍历,求深度 jvm也有一题, 概率论一两题, JavaScript一题, 还有C语言(包括指针数组,数组指针,指针函数之类的)也挺多的 更多的是看程序求输出. 大题: 1,10亿QQ号用Set和Vector两个容器来删除奇数号 2,猴子摘香蕉,一次可以摘一根或两根,求摘50根有几种摘法(斐波那契数列)

【转】腾讯、网易有道和阿里的笔试分享及自我总结

声明:本人Android移动开发岗 腾讯:考的很杂 选择题(25题不定项):考的包括: 编译原理两题, 计算机网络一两题(私网地址), C++若干, IOS开发一两题, 还有二叉树两三题,先后序遍历,求深度 jvm也有一题, 概率论一两题, JavaScript一题, 还有C语言(包括指针数组,数组指针,指针函数之类的)也挺多的 更多的是看程序求输出. 大题: 1,10亿QQ号用Set和Vector两个容器来删除奇数号 2,猴子摘香蕉,一次可以摘一根或两根,求摘50根有几种摘法(斐波那契数列)

各类学习资料链接地址

RSA算法使用介绍:http://www.cnblogs.com/AloneSword/p/3326750.html 并发编程网 -http://ifeve.com/ ImportNew - 专注Java & Android 技术分享 InfoQ - 促进软件开发领域知识与创新的传播开源中国 - 找到您想要的开源项目,分享和交流IBM developerWorks 中国 : IBM's resource for developers and IT professionalsSegmentFaul

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

国内有哪些质量高的JAVA社区? 转自:http://www.zhihu.com/question/29836842#answer-13737722 并发编程网 - ifeve.com 强烈推荐 ImportNew - 专注Java & Android 技术分享 内容也挺不错InfoQ - 促进软件开发领域知识与创新的传播开源中国 - 找到您想要的开源项目,分享和交流IBM developerWorks 中国 : IBM's resource for developers and IT prof

分享两道笔试题目

前几天,给成都的某家公司投了个简历,给发了两道笔试题目,与大家分享一下.附上自己的解题过程,写得不好的地方,还请博友多多指教. 一 .  设计程序输出销售及收费清单 一个电商平台对在其平台之上销售的除了书籍.食品以及药物以外的商品收取 10% 的费用.而对于进口的商品则额外收取 5% 的附加费用.对于平台抽取的费用计算时,舍入的规则是:对于 n% 抽取率,价格为 p的商品, np/100 的值就近舍入到 0.05(如: 7.125 -> 7.15, 6.66 -> 6.70 ). 卖家卖出一些

2015腾讯校招笔试,一、二面经(菜鸟的流水账)

注:原文首发于:https://www.zybuluo.com/cfanr/note/18732 前言:自从阿里笔试都没通过,就有点操心校招连笔试都过不了.而能通过腾讯的笔试,当然是一个很不错的机会.一定要好好把握,可惜还是错过了--唉,自从被鹅厂抛弃后,感觉找工作越来越难了.. . 废话不多说.下面笔面经: 笔试(9.20 华工 笔试岗位:移动client) 笔试基本流程:笔试前一天会收到笔试短信通知:带上2B铅笔(我真是逗b,就是不带铅笔.害我涂黑了两道题,也改不了,考后还操心答题卡不能被检

数据库笔试面试题库(Oracle、MySQL等)

数据库笔试面试题库(Oracle.MySQL等) ⊙ [DB笔试面试67]在Oracle中,关于表分区下列描述不正确的是()⊙ [DB笔试面试65]在Oracle中,哪一种表分区方式建议的分区数是2的幂(2.4.8等),以获得最平均的数据发布()⊙ [DB笔试面试63]要以NAME's address is ADDR格式返回数据,以下SQL语句正确的是⊙ [DB笔试面试61]以下关于数据模型要求错误的是()⊙ [DB笔试面试59]以下关于视图叙述不正确的是()⊙ [DB笔试面试57]下列关于SQ

BAT及各大互联网公司2014前端笔试面试题:HTML/CSS篇

BAT及各大互联网公司2014前端笔试面试题:HTML/CSS篇 2014/08/03 · Web前端, 开发 · CSS, HTML, 技术面试 分享到: 188 MongoDB集群之分片技术应用 Hello,移动WEB Linux权限管理之特殊权限 Android高级特效-索引 原文出处: Ico_Coco 的博客(@CHoK__Coco_mAm)   欢迎分享原创到伯乐头条 很多面试题是我自己面试BAT亲身经历碰到的.整理分享出来希望更多的前端er共同进步吧,不仅适用于求职者,对于巩固复习

【转】BAT及各大互联网公司2014前端笔试面试题:JavaScript篇

原文转自:http://blog.jobbole.com/78738/ 很多面试题是我自己面试BAT亲身经历碰到的.整理分享出来希望更多的前端er共同进步吧,不仅适用于求职者,对于巩固复习前端基础更是大有裨益. 而更多的题目是我一路以来收集的,也有往年的,答案不确保一定正确,如有错误或有更好的解法,还请斧正. 前面几题是会很基础,越下越有深度. 附上第二篇:BAT及各大互联网公司2014前端笔试面试题–Html,Css篇 前面几题是会很基础,越下越有深度. 初级Javascript: 1.Jav