微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在C#中到达数组中的目标项目后,connectintg 2个指针

如何解决在C#中到达数组中的目标项目后,connectintg 2个指针

我需要编写一种执行以下操作的算法:

我有一个数组,该数组的大小为n个元素的大小,带有2个指针和该数组中的目标项目。 该算法需要移动指针,直到它在 数组,然后在指针之间连接(将指针彼此移动)。

其他信息:

  1. 一个指针不知道其他指针是否找到了该项目。
  2. 他们无法连接,直到找到目标为止
  3. 指针从随机数组位置开始。

我写了这个函数

static void Test(int p1,int p2,int t,int[] array)
{
    for (int i = p1; i < array.Length; i++)
    {
        if (i == t)
        {
            p1 = i;
            break;
        }
    }

    for (int i = p2; i >= 0; i--)
    {
        if (i == t)
        {
            p2 = i;
            break;
        }
    }

    if (p1 != t)
    {
        for (int i = array.Length; i >= 0; i--)
        {
            if (i == t)
            {
                p1 = i;
                break;
            }
        }
    }

    if (p2 != t)
    {
        for (int i = 0; i < array.Length; i++)
        {
            if (i == t)
            {
                p2 = i;
                break;
            }
        }
    }
}

尽管它正在运行,但是这是一个错误的算法,因为每个指针都在单独的循环中运行。

有人可以帮我破解吗? :)

谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。