3132883944 发表于 2022-10-18 12:17:02

C语言:判断函数f的类型,是单射、满射、双射?

本帖最后由 3132883944 于 2022-10-18 12:18 编辑

题目:给定一个从{1,2,...,n}到其自身的函数f,判断函数f的类型,是单射、满射、双射?

下面是对单射、满射、双射的简单理解
满射:对任意b,存在a满足f(a) = b~
https://img-blog.csdn.net/20160721201015719
即:值域y是满的,每个y都有x对应,不存在某个y没有x对应的情况~

单射:(one-to-one function) 一对一函数,x不同则y不同~
https://img-blog.csdn.net/20160721201023046
即:没有一个x对应两个y,也没有一个y有对应两个x~

双射:既是满射,也是单射~
https://img-blog.csdn.net/20160721201029735
即:每个y都有x对应,而且都是一一对应~




映射就是说对于集合X里的每一个元素x,按法则f,在集合Y里都有唯一的y与之对应,那么称f为从集合X到集合Y的映射。记作f:X->Y。

映射基本要求是1.对于X中的每一个x,都有对应的y,还有2.一个x,只能有一个唯一的y与之对应。按照其他限制条件不同,可分为以下3种:

单射:满足,对于不同的x,经过映射后的y不同。即当x1 != x2 , f(x1) !== f(x2) 。满足单射的映射可以不满足满射,例如,我们将一个满足单射的映射f的值域放大,此时有y没有x与之对应。

满射:满足,Y集合中的每一个y,都有X集合中的一个x与之对应。满足满射的映射可以不满足单射,例如,我们将3个数的定义域映射到2个数的值域上,虽然满足满射的条件,但是有两个数被映射到同一个y上,不满足单射的条件。

双射:即满足单射又满足满射的映射称为双射。任意一单调增的函数都是满足双射的,把它的定义域和值域调换过来,构成的新函数就是原函数的反函数。



jackz007 发表于 2022-10-18 12:24:35

      完全看不懂你在说什么,这样吧,举例说明,集合 X, Y样本是哪些,哪种情形符合单射,哪些符合双射,哪些符合满射。

zhangjinxuan 发表于 2022-10-20 07:13:25

啊这,到底是谁问谁啊{:10_266:}
页: [1]
查看完整版本: C语言:判断函数f的类型,是单射、满射、双射?