摘要: 今天班里同学分享了网易的笔试题,其中的一道题觉得挺有价值的,自己参考了网上的一些相关的资料做出了一种解法,发在这里与大家分享下,有不正确的地方请大家批评指正。题目:给定一个数字 n (1<n<99999),例如123,那么组成这个数字的排序可能是 123,132,213,231,312,321,求这些排序的和。简单起见,n中不含数字0引子:看到这个题目,我的第一反应就是字符串(数组元素)的全排列问题,如果能求出给定数n所有位的全部排列,直接相加就可以了。这种全排列问题网上一搜一大把,其中何海涛老师的博客里讲解较为详细,在此我就不赘述了,直接贴出代码(代码求的是字符串的排列,其他类型 阅读全文
posted @ 2012-04-05 01:33 粗暴的香蕉 阅读(502) 评论(2) 推荐(0)
摘要: 死锁的规范定义 如果一个进程集合中的每个进程都在等待只能由该进程集合中的其他进程才能引发的事件,那么,该进程集合就是死锁的。死锁举例资源死锁: 假如两个进程都准备将扫描的文件记录到CD上,可用资源只有扫描仪一台,CD刻录机一台。A进程请求使用扫描仪,并被授权使用,B进程首先请求使用CD刻录机,也被授权使用。现在A要请求使用刻录机,该请求在B释放刻录机前被拒绝,A处于阻塞状态;而B在该情况下,非但不放弃刻录机的使用权,还继续请求使用扫描仪。于是,A和B都处于阻塞状态,并且一直处于这种状态。通信死锁: A进程向B进程发送请求信息,然后阻塞直至B回复。假如此时请求信息丢失,A将阻塞以等待回复,而.. 阅读全文
posted @ 2012-03-23 11:44 粗暴的香蕉 阅读(435) 评论(0) 推荐(0)
摘要: 今天下午突然接到了思科打来的面试电话,毫无预兆,自己也没有心理准备。对方开始先问我现在方不方便做一个简短的面试(整个电面过程不超过15分钟,真的够简短了……),其实当时我完全可以跟对方说不方便,再约个时间的,但是既然都打来了,也想测试一下自己的在无准备情况下的应急能力,就跟对方说可以面试了。问题都不难,都是一些基础的问题,可能看我简历上写的都是C++和C#的,然后面试官可能也没怎么用过C#吧,就多数都是问我C++,不过真的都不难。过程中没有问过算法题,这点我比较郁闷,因为思科做路由器交换机这些的,而他问到我这些的时候,我基本都不懂,如果问我一些算法题说不定还能加些分呢。过程中的题目都不难,.. 阅读全文
posted @ 2012-03-16 20:19 粗暴的香蕉 阅读(1523) 评论(0) 推荐(0)