---
title: 超几何分布函数
description: "生成符合超几何分布（Hypergeometric distribution）的随机数向量。"
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpckit/devg/kunpengaccel_kml_0481.html
sourcePath: /source/zh/kunpenghpcs/hpckit/devg/kunpengaccel_kml_0481.html
indexId: d5e20b498470a49c4f548b27e4c71996355c1a9d78f1a196af0e06493c6bbbda61
---
# 超几何分布函数

生成符合超几何分布（Hypergeometric distribution）的随机数向量。

#### 接口定义

KmlVslResult kml_vsl_rhyper(VslPolicy *policy, N01type normal_method, int len, double *dst, int m, int n, int k)


#### 概率密度函数


#### 参数

| 参数名 | 类型 | 描述 | 输入/输出 |
| --- | --- | --- | --- |
| len | int | 输出向量的长度。 | 输入 |
| m | int | M参数。 | 输入 |
| n | int | N参数。 | 输入 |
| k | int | K参数。 | 输入 |
| dst | int类型指针 | 指向结果的指针。 | 输出 |
| policy | VslPolicy类型指针 | 指向随机数生成器结构体指针。 | 输入 |
| normal\_method | N01type类型枚举体 | 生成正态分布的算法。 | 输入 |


#### 依赖

#include "krng.h"


#### 示例

```
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include "krng.h"
int main()
{
VslPolicy *policy;
kml_vsl_init(&policy, LECUYER_CMRG, time(NULL));
int len = 10;
int *dst = (int *)malloc(sizeof(int) * len);
int a = kml_vsl_rhyper(policy, BOX_MULLER, len, dst, 10, 2, 3);
for (int i = 0; i < len; i++) {
printf("%d ", dst[i]);
}
printf("\n");
kml_vsl_destroy(policy);
}
```
