在C#中,要查找子数组在主数组中的第一个出现/起始索引,可以使用以下方法:
public static int FindSubArrayIndex(int[] mainArray, int[] subArray)
{
int mainLength = mainArray.Length;
int subLength = subArray.Length;
for (int i = 0; i <= mainLength - subLength; i++)
{
if (IsSubArray(mainArray, i, subArray))
{
return i;
}
}
return -1;
}
private static bool IsSubArray(int[] mainArray, int index, int[] subArray)
{
for (int i = 0; i < subArray.Length; i++)
{
if (mainArray[index + i] != subArray[i])
{
return false;
}
}
return true;
}
这个方法首先遍历主数组,然后使用IsSubArray
方法检查子数组是否与主数组中的当前位置匹配。如果匹配,则返回当前位置作为子数组的起始索引。如果没有找到匹配项,则返回-1。
在这个方法中,我们没有使用任何云计算品牌商,因此它是一个纯粹的C#解决方案,可以在任何云计算环境中使用。
领取专属 10元无门槛券
手把手带您无忧上云