2012年5月6日

【算法复习四】计算复杂性与算法分析---组合数学知识汇总

摘要: 一,组合数学问题 1)排列定义 • 从n个不同的元素中,取r个不重复的元素,按次序排列,称为从n个中取r个的无重排列。 •排列的全体组成的集合用P(n,r)表示。当r=n时称为全排列。 组合定义 • 定义从n个不同元素中取r个不重复的元素组成一个子集,而不考虑其元素的顺序,称为从n个中取r个的无重组合。 • 组合的全体组成的集合用C(n,r)表示。 2)例题一:某车站有6个入口处,每个入口处每次只能进一人,一组9个人进站的方案有多少? 【解法】一进站方案表示成:00011001010100 其中“0”表示人,“1”表示门框,其中“0”是不同元,“1”是相同元。给“1”n个门只用n-1个门框.. 阅读全文

posted @ 2012-05-06 21:08 小田的专栏 阅读(540) 评论(0) 推荐(0) 编辑

【算法复习三】算法设计技巧与优化----算法设计技巧之中位数

摘要: 题目:设计一个高效算法,求两个等长为L的升序序列A和B的中位数。 例如:S1=(11,13,15,17,19) S2=(2,4,6,8,20) 则S1和S2的中位数是11。1)问题分析1: 简单的算法是将两个升序序列归并排序,然后求其中位数算法的时间复杂度和空间复杂度均为0(n)2)问题分析2: 利用归并排序的思想对A和B的元素逐个访问,同时计数,当访问到第L个元素时即为所求。 算法时间、空间复杂度分别为O(n), O(1)3)问题分析3: 分别求A和B的中位数a和b。 (1)若a=b,则a或b即为所求。 (2)若a<b,舍弃a所在序列A中的较小一半,同时舍弃b中所在序列B较大一半,两者 阅读全文

posted @ 2012-05-06 16:56 小田的专栏 阅读(353) 评论(0) 推荐(0) 编辑

【算法复习三】算法设计技巧与优化----算法设计技巧

摘要: 一,例题:找出n个自然数(1,2,3,…,n)中r个数的组合。 •例如,当n=5,r=3时,所有组合为: 12 3 1 2 4 12 5 13 4 13 5 14 5 23 4 23 5 24 5 34 5 total=10 {组合的总数} •算法设计1)n个数中r的组合,其中每r个数中,数不能相同;2)任何两组组合的数,所包含的数也不应相同。例如,5、4、3与3、4、5。为此,约定前一个数应小于后一个数。将上述两条作为约束条件;3)当r=3时,可用三重循环进行枚举。 【解法一】穷举法 #include <iostream>using namespace s... 阅读全文

posted @ 2012-05-06 16:12 小田的专栏 阅读(349) 评论(0) 推荐(0) 编辑

【面试】面试经典问答和回答思路

摘要: 面试过程中,面试官会向应聘者发问,而应聘者的回答将成为面试官考虑是否接受他的重要依据。对应聘者而言,了解这些问题背后的“猫腻”至关重要。 问题一:“请你自我介绍一下” 思路: 1、这是面试的必考题目。 2、介绍内容要与个人简历相一致。 3、表述方式上尽量口语化。 4、要切中要害,不谈无关、无用的内容。 5、条理要清晰,层次要分明。 6、事先最好以文字的形式写好背熟。 回答要点:用10秒钟简单说说个人资料即可。用一分半钟左右时间介绍你以前从事的工作,和所获得的经验。再用一分钟左右时间描述你以前的工作经验对应聘的这份职位来说有那些帮助。 问题二:“谈谈你的家庭情况” 思路: ... 阅读全文

posted @ 2012-05-06 14:09 小田的专栏 阅读(387) 评论(0) 推荐(1) 编辑

导航