1、2022-8-5计算机应用技术研究所计算机应用技术研究所11离散数学离散数学Discrete Mathematics汪荣贵汪荣贵 教授教授合肥工业大学计算机与信息学院合肥工业大学计算机与信息学院2022-8-5计算机应用技术研究所计算机应用技术研究所2第七章第七章 函数与特殊函数函数与特殊函数2022-8-52022-8-5&本章学习内容本章学习内容 有限集的置换函数有限集的置换函数4 4 函数关系的应用函数关系的应用5 52022-8-5计算机应用技术研究所计算机应用技术研究所4有限集的置换函数有限集的置换函数2022-8-5计算机应用技术研究所计算机应用技术研究所5&置换函数置换函数J 置
2、换函数的概念置换函数的概念4 置换函数的运算置换函数的运算4 置换的轮换分解置换的轮换分解2022-8-52022-8-5&置换函数的概念置换函数的概念2022-8-52022-8-5&例例 题题2022-8-52022-8-5&置换函数的概念置换函数的概念2022-8-52022-8-5&例例 题题2022-8-52022-8-5&例例 题题【例【例题题】等边三角形如图7-2所示,求经过旋转和翻转能使之重合的所有置换函数.2022-8-52022-8-5&例例 题题2022-8-52022-8-5&例例 题题2022-8-5计算机应用技术研究所计算机应用技术研究所13&置换函数置换函数4 置
3、换函数的概念置换函数的概念J 置换函数的运算置换函数的运算4 置换的轮换分解置换的轮换分解2022-8-5计算机应用技术研究所计算机应用技术研究所14&置换函数的运算置换函数的运算 置换置换是是一种特殊的双射函数一种特殊的双射函数,关于函数,关于函数的求逆运算和复合运算在置换中完全适用的求逆运算和复合运算在置换中完全适用.因此因此,可直接将一般函数的逆运算和复,可直接将一般函数的逆运算和复合运算作为合运算作为置换函数的逆运算和复合运算置换函数的逆运算和复合运算.2022-8-5计算机应用技术研究所计算机应用技术研究所15&例例 题题2022-8-5计算机应用技术研究所计算机应用技术研究所16&
4、例例 题题2022-8-5计算机应用技术研究所计算机应用技术研究所17&置换函数的运算置换函数的运算2022-8-5计算机应用技术研究所计算机应用技术研究所18&例例 题题2022-8-5计算机应用技术研究所计算机应用技术研究所19&置换函数置换函数4 置换函数的概念置换函数的概念4 置换函数的运算置换函数的运算J 置换的轮换分解置换的轮换分解2022-8-5计算机应用技术研究所计算机应用技术研究所20&置换的轮换置换的轮换2022-8-5计算机应用技术研究所计算机应用技术研究所21&例例 题题2022-8-5计算机应用技术研究所计算机应用技术研究所22&置换的轮换置换的轮换2022-8-5计
5、算机应用技术研究所计算机应用技术研究所23&置换的轮换置换的轮换2022-8-5计算机应用技术研究所计算机应用技术研究所24&置换的轮换置换的轮换2022-8-5计算机应用技术研究所计算机应用技术研究所25&例例 题题2022-8-5计算机应用技术研究所计算机应用技术研究所26&例例 题题试问按照同样的洗牌方式,经过几次洗牌可以将牌的顺序恢复到原来的顺序.2022-8-5计算机应用技术研究所计算机应用技术研究所27&例例 题题【分析】【分析】从已知可以发现,不管怎么洗牌,1和12的位置始终不改变,但是其他牌的位置在每次洗牌之后都会发生变化,其变化存在如下规律:2561042,3911873由上
6、面的规律可以知道,经过5轮的洗牌后,每张牌都将回到原来的位置。所以这是一个5阶轮换,当轮换置换是n重轮换时,需要n次才可以将牌的顺序恢复到原来的顺序.2022-8-52022-8-5&本章学习内容本章学习内容 有限集的置换函数有限集的置换函数4 4 函数关系的应用函数关系的应用5 52022-8-5计算机应用技术研究所计算机应用技术研究所29函数关系的应用函数关系的应用2022-8-5计算机应用技术研究所计算机应用技术研究所30&置换函数置换函数J 哈希查找问题哈希查找问题 4 网络宽带分配问题网络宽带分配问题2022-8-5计算机应用技术研究所计算机应用技术研究所31&哈希查找问题哈希查找问
7、题【定义定义】哈希函数(Hash function)也称为散列函数或 Hash函数,是一种将任意长度的输入字符串变化为固定长的输出字符串的函数。在数据结构中,通常借助哈希函数来加速对数据项的查找过程。根据应用情况的不同,通常也将哈希函数的输出称为哈希值或哈希码或散列值等。2022-8-5计算机应用技术研究所计算机应用技术研究所32&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所33&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所34&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所35&哈希查找
8、问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所36&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所37&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所38&哈希查找问题哈希查找问题常见的构造哈希函数的方法有以下几种:3)平方取中法。平方取中法是一种比较常用的构造哈希函数的方法,具体是:将关键字求平方后,取其中间的几位数字作为散列地址。由于关键字平方后的中间几位数字和组成关键字的每一位数字都有关,因此产生冲突的可能性较小,最后究竟取几位数字作为散列地址需要由散列表的长度决定。2022-8-5计算机应用技
9、术研究所计算机应用技术研究所39&哈希查找问题哈希查找问题例如,若结构的存储地址范围是1999,则取平方值的中间三位,如表所示。2022-8-5计算机应用技术研究所计算机应用技术研究所40&哈希查找问题哈希查找问题常见的构造哈希函数的方法有以下几种:4)折叠法。折叠法适用于关键字位数很多且关键字中每一位上数字分布大致均匀的情况。具体方法是:将关键字分割成位数相同的几部分(最后一部分的位数可以不同),然后取这几部分的叠加和(舍去进位)作为哈希地址。叠加又可分为移位叠加和间界叠加移位叠加和间界叠加。其中,移位叠加是将分组后的每位数字的最低位对齐,然后相加;间界叠加是将分组后的每组数字从一端向另一端
10、沿分界线进行来回折叠,然后对齐相加。2022-8-5计算机应用技术研究所计算机应用技术研究所41&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所42&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所43&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所44&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所45&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所46&哈希查找问题哈希查找问题常见的解决冲突的方法有下面几种:2 2)再哈希法
11、。再哈希法。再哈希法是当同义词产生地址冲突时计算另一个哈希函数地址,直到冲突不再发生。这种方法不易产生“聚集”,但增加了计算的时间。2022-8-5计算机应用技术研究所计算机应用技术研究所47&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所48&哈希查找问题哈希查找问题2022-8-5计算机应用技术研究所计算机应用技术研究所49&网络带宽分配问题网络带宽分配问题【问题前沿问题前沿】一般来说,用户使用的宽带分成两部分:静态宽带静态宽带和动动态宽带态宽带。静态宽带是运营商承诺的最小宽带,已经预留给每个用户;动态宽带被所有的用户共享,根据需求进行分配。语音视频业务服
12、务过程一般分成三步:建立连接、进行语音建立连接、进行语音视频传输、结束服务视频传输、结束服务。对于已经建立连接并正在进行传输的服务,运营商应该保证其所需要的宽带。而在连接阶段,如果所有客户申请的宽带总量超过运营商所提供的宽带时,则进行宽带分配。用户的优先级用户的优先级=他可使用的最大宽带与已占有的宽带之比,需求量越大,被满足的宽带越小,则优先级越高。2022-8-5计算机应用技术研究所计算机应用技术研究所50&网络带宽分配问题网络带宽分配问题【问题描述问题描述】假设已知每一项业务所申请的宽带大小,在保证分配的宽带之和不超过网络总宽带的条件下,如何选择一部分业务如何选择一部分业务,以使得这些业务
13、的优先级收益(即所有业务的优先级之和,以使得这些业务的优先级收益(即所有业务的优先级之和)达到最大?)达到最大?2022-8-5计算机应用技术研究所计算机应用技术研究所51&网络带宽分配问题网络带宽分配问题2022-8-5计算机应用技术研究所计算机应用技术研究所52&网络带宽分配问题网络带宽分配问题2022-8-5计算机应用技术研究所计算机应用技术研究所53&网络带宽分配问题网络带宽分配问题2022-8-5计算机应用技术研究所计算机应用技术研究所54&网络带宽分配问题网络带宽分配问题2022-8-5计算机应用技术研究所计算机应用技术研究所55&网络带宽分配问题网络带宽分配问题2022-8-52022-8-5本章内容到此结束