首页 > 其他分享 >中等-817. 链表组件

中等-817. 链表组件

时间:2022-10-12 11:35:34浏览次数:55  
标签:head cur val nums 链表 组件 817

解题思路:对链表循环 执行结果:通过 执行用时:232 ms, 在所有 JavaScript 提交中击败了36.36%的用户 内存消耗:44.5 MB, 在所有 JavaScript 提交中击败了93.18%的用户 通过测试用例:57 / 57

给定链表头结点 head,该链表上的每个结点都有一个 唯一的整型值 。同时给定列表 nums,该列表是上述链表中整型值的一个子集。

返回列表 nums 中组件的个数,这里对组件的定义为:链表中一段最长连续结点的值(该值必须在列表 nums 中)构成的集合。

 

示例 1:

 

输入: head = [0,1,2,3], nums = [0,1,3]
输出: 2
解释: 链表中,0 和 1 是相连接的,且 nums 中不包含 2,所以 [0, 1] 是 nums 的一个组件,同理 [3] 也是一个组件,故返回 2。
示例 2:

 

输入: head = [0,1,2,3,4], nums = [0,3,1,4]
输出: 2
解释: 链表中,0 和 1 是相连接的,3 和 4 是相连接的,所以 [0, 1] 和 [3, 4] 是两个组件,故返回 2。
 

提示:

链表中节点数为n
1 <= n <= 104
0 <= Node.val < n
Node.val 中所有值 不同
1 <= nums.length <= n
0 <= nums[i] < n
nums 中所有值 不同

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/linked-list-components
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

/**
 * Definition for singly-linked list.
 * function ListNode(val, next) {
 *     this.val = (val===undefined ? 0 : val)
 *     this.next = (next===undefined ? null : next)
 * }
 */
/**
 * @param {ListNode} head
 * @param {number[]} nums
 * @return {number}
 */
var numComponents = function(head, nums) {
    let cur=head;
    let len=0
    let num=0
    while(cur){
        if(nums.indexOf(cur.val)>-1){
            len++
        }else if(len>0){
            num++
            len=0
        }
        cur=cur.next
    }
    if(len>0){
        num++
    }
    return num
};

 

标签:head,cur,val,nums,链表,组件,817
From: https://www.cnblogs.com/caoke/p/16783912.html

相关文章

  • Jchardet——支持检测并输出文件编码方式的组件
     简介Jchardet是OpenAtomOpenHarmony(以下简称“OpenHarmony”)系统的一款检测文本编码的组件。当上传一个文件时,组件可以检测并输出该文件中文本使用的编码方式。支......
  • 即用型UI组件库Kendo UI R3 2022,让应用主题开发更容易
    KendoUI是带有 jQuery、Angular、React和Vue库的JavaScriptUI组件的最终集合,无论选择哪种JavaScript框架,都可以快速构建高性能响应式Web应用程序。通过可自定义的UI组件......
  • 817. 链表组件
    817.链表组件给定链表头结点 head,该链表上的每个结点都有一个唯一的整型值。同时给定列表 nums,该列表是上述链表中整型值的一个子集。返回列表 nums 中组件的......
  • Vue里面父组件嵌套子组件的生命周期
     最常见的4种状态1.Creation2.Mounting3.Updating4.Unmouting 通常create用来放API的如果是在Mount是挂载后操作DOM的   我们搞清楚他的生命周期顺序,父......
  • 数据结构 链表(第7、8天)
    链表这里面的链表题比较简单,只要会遍历链表、删除链表节点、反转链表这些基本操作就行。必要时可以画图辅助理解。141.环形链表给定一个链表,判断是否有环。思路:快慢指......
  • 好用的组件收藏
    播放器播放条斗鱼、Youtobe等https://web-streaming.github.io/ppbar/使用使用ppbar,需要导入ProgressBar类和ppbar的样式。importProgressBarfrom'ppbar';......
  • //按照完全二叉树的层次顺序一次输入节点信息建立二叉链表的算法
    //按照完全二叉树的层次顺序一次输入节点信息建立二叉链表的算法#include<stdio.h>#include<stdlib.h>typedefcharDataType;typedefstructnode{DataT......
  • 算法每日一题(反转单链表)C语言版
     在本篇文章里,我将分享一道很经典的算法题———反转链表,并且分享多种方法去解决方法,希望可以帮助到你......
  • 公共组件的显示与隐藏
     Footer组件显示与隐藏显示或者隐藏组件:v-if|v-showFooter组件:在Home,Search显示Footer组件Footer组件:在登陆,注册时候隐藏的 1.我们可以根据组件身上的$route......
  • 「Java 数据结构」:手撕单链表的增删改查及大厂面试题。
    目录​​一、单链表的增删改查​​​​1、创建结点     ​​​​2、单链表的添加操作​​​​3、单链表的删除操作​​​​4、单链表的有效结点的个数​​​​二、......