c# - 将较小的数组内插到较大的数组中,反之亦然
问题描述
我正在寻找一种将较大数组中的数据插入到较小数组中的方法,反之亦然?
例如,如果我有一个包含 137 个数据元素的数组,并且我想将该数据调整为包含 2000 个元素的数组。同时,我想插入 137 个值,以便它们均匀地适合新数组中的 2000 个元素。因此,我需要某种插值/采样机制,有点像以任意方式调整图像大小。
有没有人有可以实现这一目标的算法?
非常感谢,
达米安
解决方案
我找到并改编了这段代码:
void Interpolate(float[] destination, int destFrom, int destTo, float valueFrom, float valueTo)
{
int destLength = destTo - destFrom;
float valueLength = valueTo - valueFrom;
for (int i = 0; i <= destLength; i++)
destination[destFrom + i] = valueFrom + (valueLength * i) / destLength;
}
这非常适合我的需要。
推荐阅读
- xcode - iOS 14 DispatchQueue.main.async 不工作
- python - 在 python 中读取文件时 Errno 13 Permission Denied
- latex - 如何使用 tikz - Latex 绘制坐标矩阵?
- visual-studio - Unity(2020.1.5f1) Intellisense 无法在 Visual Studio 2019 上运行
- java - 如何在不更改 Java 中的 hashmap 本身的情况下获取和更改 hashmap 的值?
- javascript - vuejs 的 toast-ui 编辑器中的 v-model
- postgresql - 如何在postgres中获得除负数之外的平均值
- ios - Swift 模块稳定性:使用 Swift XY 编译的模块不能被 Swift XZ 编译器导入
- google-data-studio - 在 Data Studio 中将秒转换为 MM:HH:SS
- laravel - laravel 中间件在刀片中没有收到错误代码或会话消息