ITPub博客

首页 > 应用开发 > .net > 分享net面试题和经验

分享net面试题和经验

.net 作者:陕西优就业 时间:2020-01-03 09:37:48 0 删除 编辑

      下面 陕西优就业小编和大家分享一下经验,希望能帮助到大家!

  1、现场编码。

  要求写出:缓存类+SqlHelper类(30分钟内,然后由代码引向面象对象或设计模式)。

  2、数据库。

  问了两点:索引的坏处,事务的级别,分布式事务的原理。

  3、发散思维题一。

  题目:电商,瞬时抢购的方案,你会如何设计。

  4、发散思维题二。

  题目:4G内存的电脑,如何读取8G的日志文件进行分析,汇总数据成报表。

  5、回归基础题。

  题目:说说 数组、链表、Hash表的缺点。

  6、IIS。

  题目:应用程序池的集成模式和经典模式的区别。

  7、发散性问题:安全

  题目:说说你认为的安全都有涉及到哪些地方?

  8、发散性问题:性能

  题目:说说你认为的性能都体现在哪些地方?

  9、发散性问题:分布式

  题目:说说集群、故障转移、负载均衡、分布式都有哪些不同?

  10、Http 协议

  猴子选大王问题是一个十分经典的算法问题,这个问题是这样的:一堆猴子都有编号,编号是1,2,3 ...m,这群猴子(m个)按照1-m的顺序围坐一圈,从第1开始数,每数到第N个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只猴子,则该猴子为大王。这个问题要解决起来并不难,但求解的方法很多;题目的变化形式也很多,而我们统称这类问题为约瑟夫问题。这类题目基本的描述为:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N=6,M=5,被杀掉的顺序是:5,4,6,2,3,1。下面我们先来分析一下解决这类问题的几个步骤。

  (1)由于对于每个人只有死和活两种状态,因此可以用布朗型数组标记每个人的状态,可用true表示死,false表示活。

  (2)开始时每个人都是活的,所以数组初值全部赋为false。

  (3)模拟杀人过程,直到所有人都被杀死为止。

  题目中N个人围成一圈,因而启发我们用一个循环的链来表示,可以使用数组结构来构成一个循环链表。结构中有两个成员,其一为指向下一个人的指针,以构成环形的链;其二为该人是否被杀死的标记,为1表示还存活。从第一个人开始对还存活的人进行计数,每数到M时,将结构中的标记改为0,表示该人已被杀死。这样循环计数直到有15个人被杀死为止。

  但是,无论是用链表实现还是用数组实现都有一个共同点:要模拟整个游戏过程,不仅程序写起来比较烦,而且时间复杂度高达O(nm),当n,m非常大(例如上百万,上千万)的时候,几乎是没有办法在短时间内出结果的。我们注意到原问题仅仅是要求出最后的胜利者的序号,而不是要读者模拟整个过程。因此如果要追求效率,就要打破常规,实施一点数学策略。

推荐阅读:

http://blog.itpub.net/69902581/viewspace-2668444/程序员35岁不焦虑,该怎么做?

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69902581/viewspace-2671747/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
我要做IT大佬 请叫我大佬

注册时间:2018-12-13

  • 博文量
    157
  • 访问量
    226499