Sobes.tech
Junior — Middle

როგორ გამოვიცნოთ მარტივი დაკავშირებული სიის ბოლო ელემენტის წინ?

sobes.tech AI

პასუხი AI-სგან

ਇੱਕਲੌਤਾ ਜੁੜੇ ਹੋਏ ਲੜੀ ਵਿੱਚ, ਆਖਰੀ ਤੋਂ ਪਹਿਲਾਂ ਵਾਲੇ ਤੱਤ ਨੂੰ ਲੱਭਣ ਲਈ, ਤੁਹਾਨੂੰ ਲੜੀ ਨੂੰ ਪਾਰ ਕਰਨਾ ਪਵੇਗਾ ਅਤੇ ਉਸ ਨੋਡ 'ਤੇ ਰੁਕਣਾ ਪਵੇਗਾ ਜਿਸਦਾ ਅਗਲਾ ਨੋਡ ਆਖਰੀ ਹੈ (ਅਰਥਾਤ, ਅਗਲੇ ਨੋਡ ਦਾ Next ਖੇਤਰ null ਹੈ)।

C# ਵਿੱਚ ਉਦਾਹਰਨ:

class Node {
    public int Value;
    public Node Next;
}

Node FindPenultimate(Node head) {
    if (head == null || head.Next == null) return null; // ਕੋਈ ਪੂਰਵ-ਅੰਤ ਨਹੀਂ
    Node current = head;
    while (current.Next.Next != null) {
        current = current.Next;
    }
    return current;
}

ਇੱਥੇ, ਲੂਪ ਉਸ ਸਮੇਂ ਤੱਕ ਚੱਲਦਾ ਰਹਿੰਦਾ ਹੈ ਜਦ ਤੱਕ ਅਗਲਾ ਨੋਡ ਵੀ ਇੱਕ ਅਗਲੇ ਨੋਡ ਨੂੰ ਰੱਖਦਾ ਹੈ, ਅਰਥਾਤ, ਅਸੀਂ ਪੂਰਵ-ਅੰਤ ਤੱਤ ਤੱਕ ਪਹੁੰਚਦੇ ਹਾਂ।