欢迎来到天天文库
浏览记录
ID:39663850
大小:267.10 KB
页数:32页
时间:2019-07-08
《《组合问题》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.1.2分类计数原理与分步计数原理(二)1、分类加法计数原理:完成一件事,有n类办法,在第1类办法中有m1种不同的方法,在第2类办法中有m2种不同的方法……在第n类办法中有mn种不同的方法.那么 完成这件事共有种不同的方法.2、分步乘法计数原理:完成一件事,需要分成n个步骤,做第1步有m1种不同的方法,做第2步有m2种不同的方法……,做第n步有mn种不同的方法.那么完成这件事共有种不同的方法.分类加法计数原理和分步乘法计数原理的共同点:不同点:分类加法计数原理与分类有关,分步乘法计数原理与分步有关。回答的都是有关做一件事的不同方法种数的问题分类计数原理分步计数原理完成一件事,共有n类办法
2、,关键词“分类”区别1完成一件事,共分n个步骤,关键词“分步”区别2区别3每类办法都能独立地完成这件事情,它是独立的、一次的、且每次得到的是最后结果,只须一种方法就可完成这件事。每一步得到的只是中间结果,任何一步都不能独立完成这件事,缺少任何一步也不能完成这件事,只有各个步骤都完成了,才能完成这件事。各类办法是互相独立的。各步之间是互相关联的。即:类类独立,步步关联。例1.五名学生报名参加四项体育比赛,(1)每人限报一项,报名方法的种数为多少?(2)又他们争夺这四项比赛的冠军,获得冠军的可能性有多少种?解:(1)5名学生中任一名均可报其中的任一项,因此每个学生都有4种报名方法,5名学生都报
3、了项目才能算完成这一事件故报名方法种数为4×4×4×4×4=种.(2)每个项目只有一个冠军,每一名学生都可能获得其中的一项获军,因此每个项目获冠军的可能性有5种故有n=5×5×5×5=种.例5.给程序模块命名,需要用3个字符,其中首个字符要求用字母A~G或U~Z,后两个要求用数字1~9,问最多可以给多少个程序命名?分析:要给一个程序模块命名,可以分三个步骤:第一步,选首字符;第二步,先中间字符;第三步,选末位字符。解:首字符共有7+6=13种不同的选法,答:最多可以给1053个程序命名。中间字符和末位字符各有9种不同的选法根据分步计数原理,最多可以有13×9×9=1053种不同的选法例6.
4、核糖核酸(RNA)分子是在生物细胞中发现的化学成分,一个RNA分子是一个有着数百个甚至数千个位置的长链,长链中每一个位置上都由一种称为碱基的化学成分所占据,总共有4个不同的碱基,分别用A,C,G,U表示,在一个RNA分子中,各种碱基能够以任意次序出现,所以在任意一个位置上的碱基与其他位置上的碱基无关。假设有一类RNA分子由100个碱基组成,那么能有多少种不同的RNA分子?UUUAAACCCGGG分析:用100个位置表示由100个碱基组成的长链,每个位置都可以从A、C、G、U中任选一个来占据。第1位第2位第3位第100位4种4种4种4种……解:100个碱基组成的长链共有100个位置,在每个位
5、置中,从A、C、G、U中任选一个来填入,每个位置有4种填充方法。根据分步计数原理,共有种不同的RNA分子.例7.电子元件很容易实现电路的通与断、电位的高与底等两种状态,而这也是最容易控制的两种状态。因此计算机内部就采用了每一位只有0或1两种数字的计数法,即二进制,为了使计算机能够识别字符,需要对字符进行编码,每个字符可以用一个或多个字节来表示,其中字节是计算机中数据存储的最小计量单位,每个字节由8个二进制位构成,问(1)一个字节(8位)最多可以表示多少个不同的字符?(2)计算机汉字国标码(GB码)包含了6763个汉字,一个汉字为一个字符,要对这些汉字进行编码,每个汉字至少要用多少个字节表示
6、?第1位第2位第3位第8位2种2种2种2种……如00000000,10000000,11111111.开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A例8.计算机编程人员在编写好程序以后要对程序进行测试。程序员需要知道到底有多少条执行路(即程序从开始到结束的线),以便知道需要提供多少个测试数据。一般的,一个程序模块又许多子模块组成,它的一个具有许多执行路径的程序模块。问:这个程序模块有多少条执行路径?另外为了减少测试时间,程序员需要设法减少测试次数,你能帮助程序员设计一个测试方式,以减少测试次数吗?开始子模块118条执
7、行路径子模块328条执行路径子模块245条执行路径子模块543条执行路径子模块438条执行路径结束A分析:整个模块的任意一条路径都分两步完成:第1步是从开始执行到A点;第2步是从A点执行到结束。而第步可由子模块1或子模块2或子模块3来完成;第二步可由子模块4或子模块5来完成。因此,分析一条指令在整个模块的执行路径需要用到两个计数原理。开始子模块118条执行路径子模块328条执行路径子模块245条执行路径子模块543条执行
此文档下载收益归作者所有