Leetcode 817. Linked List Components

版权声明:博客文章都是作者辛苦整理的,转载请注明出处,谢谢! https://blog.csdn.net/Quincuntial/article/details/82900269

文章作者:Tyan
博客:noahsnail.com  |  CSDN  |  简书

1. Description

Linked List Components

2. Solution

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    int numComponents(ListNode* head, vector<int>& G) {
        int count = 0;
        int values[10000] = {0};
        for(int value : G) {
            values[value] = 1;
        }
        ListNode* current = head;
        ListNode* pre = head;
        count = values[current->val]?1:0;
        while(current) {
            if(values[current->val] && !values[pre->val]) {
                count++;
            }
            pre = current;
            current = current->next;
        }
        return count;
    }
};

Reference

  1. https://leetcode.com/problems/linked-list-components/description/

猜你喜欢

转载自blog.csdn.net/Quincuntial/article/details/82900269