在数组中每个索引的左侧/右侧查找Argmin是一个算法问题,用于在给定数组中找到每个索引位置左侧或右侧的最小值的索引。
答案如下:
该问题可以通过遍历数组并使用一个辅助数组来解决。辅助数组用于存储每个索引位置左侧或右侧的最小值的索引。
对于左侧查找Argmin,可以按照以下步骤解决:
- 创建一个与原始数组相同大小的辅助数组,初始化为-1,表示没有找到最小值的索引。
- 从左到右遍历原始数组,对于每个索引位置i,执行以下操作:
- 如果辅助数组中i-1位置的值为-1,表示左侧没有找到最小值的索引,将i赋值给辅助数组的i位置。
- 如果辅助数组中i-1位置的值不为-1,表示左侧已经找到最小值的索引,比较原始数组中i位置的值和原始数组中辅助数组中i-1位置的值,如果原始数组中i位置的值更小,则将i赋值给辅助数组的i位置,否则将辅助数组中i-1位置的值赋值给辅助数组的i位置。
- 返回辅助数组作为结果,即为每个索引位置左侧的最小值的索引。
对于右侧查找Argmin,可以按照以下步骤解决:
- 创建一个与原始数组相同大小的辅助数组,初始化为-1,表示没有找到最小值的索引。
- 从右到左遍历原始数组,对于每个索引位置i,执行以下操作:
- 如果辅助数组中i+1位置的值为-1,表示右侧没有找到最小值的索引,将i赋值给辅助数组的i位置。
- 如果辅助数组中i+1位置的值不为-1,表示右侧已经找到最小值的索引,比较原始数组中i位置的值和原始数组中辅助数组中i+1位置的值,如果原始数组中i位置的值更小,则将i赋值给辅助数组的i位置,否则将辅助数组中i+1位置的值赋值给辅助数组的i位置。
- 返回辅助数组作为结果,即为每个索引位置右侧的最小值的索引。
这个问题可以应用于很多场景,例如在图像处理中,可以使用该算法找到每个像素点左侧或右侧的最小灰度值的像素点索引。在机器学习中,可以使用该算法找到每个样本左侧或右侧的最小特征值的索引。
腾讯云相关产品和产品介绍链接地址:
- 腾讯云云服务器(CVM):提供弹性计算能力,满足各种业务需求。详情请参考:https://cloud.tencent.com/product/cvm
- 腾讯云云数据库 MySQL 版:提供高性能、可扩展的关系型数据库服务。详情请参考:https://cloud.tencent.com/product/cdb_mysql
- 腾讯云对象存储(COS):提供安全、稳定、低成本的云端存储服务。详情请参考:https://cloud.tencent.com/product/cos
- 腾讯云人工智能:提供丰富的人工智能服务和解决方案,包括图像识别、语音识别、自然语言处理等。详情请参考:https://cloud.tencent.com/product/ai