单射是对于不同的输入元素,对应的输出元素也不同;满射是函数的值域等于输出元素集合。例如:f(x) = x^2 是单射但不是满射,因为负数没有平方根;g(x) = x^2 是满射但不是单射,因为不同的正数对应相同的输出值;h(1) = a,h(2) = b,h(3) = c 是单射且满射。
单射和满射的定义
定义:
单射(一对一映射):
一个函数 f: A → B 被称为单射或一对一映射,当且仅当对于 A 中的任意两个不同元素 a 和 b,f(a) 和 f(b) 也不同,即 f(a) ≠ f(b)。
满射(满射映射):
一个函数 f: A → B 被称为满射或满射映射,当且仅当对于 B 中的任意元素 b,都存在一个 A 中的元素 a 使得 f(a) = b。换句话说,f 的值域等于 B。
区别:
- 单射关注函数对输入元素的区分能力,即不同的输入元素对应不同的输出元素。
- 满射关注函数对输出元素的覆盖能力,即函数的值域包含整个 B 集合。
例如:
- 函数 f: R → R,定义为 f(x) = x²,是单射但不是满射(因为负数没有平方根)。
- 函数 g: R → [0, ∞),定义为 g(x) = x²,是满射但不是单射(因为不同的正数对应相同的输出值)。
- 函数 h: {1, 2, 3} → {a, b, c},定义为 h(1) = a,h(2) = b,h(3) = c,是单射且满射,因为不同的输入对应不同的输出,且输出值覆盖了整个 B 集合。