首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JS数组at函数(获取最后一个元素的方法)介绍

    本文介绍js中数组的at函数,属于比较简单的知识普及性文章,难度不大。 0x00 首先,我们可以思考如下一个问题,如果要获取一个数组的最后一个元素(这是很常用的操作),我们应该怎么做?...当然除了这种方式之外,还有其他的方式,比如: let last = array.slice(-1)[0] 先通过slice获取后面一个元素的数组,然后通过下标0获取最后一个元素。...在比如通过pop获取最后一个元素: let last = array.pop() 但是 通过pop的方式会改变数组本身,所以一般不建议用。 0x01 无论试用上面那种方式,都感觉很繁琐。...这就让人羡慕python里面的数组操作,可以通过负索引的方式获取最后一个元素,代码如下: last = array[-1] js里面不支持负索引的方式。...不过es6新增了一个at方法,可以获取数组的指定索引的元素,并且支持负索引。负索引从后往前计算,-1表示最后一个,-2 表示倒数第二个,依此类推。 因此试用此方法获取最后一个元素会变得简单很多。

    4.7K30

    从第一个节点出发到最后一个节点的受限路径数(迪杰斯特拉 + 拓扑排序)

    题目 现有一个加权无向连通图。...给你一个正整数 n ,表示图中有 n 个节点,并按从 1 到 n 给节点编号;另给你一个数组 edges ,其中每个 edges[i] = [ui, vi, weighti] 表示存在一条位于节点 ui...从节点 start 出发到节点 end 的路径是一个形如 [z0, z1, z2, ..., zk] 的节点序列,满足 z0 = start 、zk = end 且在所有符合 0 <= i <= k-1...返回从节点 1 出发到节点 n 的 受限路径数 。 由于数字可能很大,请返回对 10^9 + 7 取余 的结果。...解题 先预处理出每个点 到 n 点 的最短路径,参考迪杰斯特拉算法 再建立 1 开始的最短路径是递减的 新图,同时记录节点的入度 采用 拓扑排序,累积前一个节点转移过来的方案数 typedef pair

    51910

    最后一个单词的长度

    给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。...示例 1: 输入:s = "Hello World" 输出:5 解释:最后一个单词是“World”,长度为5。...题目要求得到字符串中最后一个单词的长度,可以反向遍历字符串,寻找最后一个单词并计算其长度。 由于字符串中至少存在一个单词,因此字符串中一定有字母。...首先找到字符串中的最后一个字母,该字母即为最后一个单词的最后一个字母。 从最后一个字母开始继续反向遍历字符串,直到遇到空格或者到达字符串的起始位置。...遍历到的每个字母都是最后一个单词中的字母,因此遍历到的字母数量即为最后一个单词的长度。

    17630

    JS算法之两个链表的第一个公共节点

    两个链表的第一个公共节点 剑指Offer 52.两个链表的第一个公共节点 难度:简单 题目:leetcode-cn.com/problems/li… 输入两个链表,找出它们的第一个公共节点。...在 A 中,相交节点前有 2 个节点;在 B 中,相交节点前有 3 个节点。...在 A 中,相交节点前有 3 个节点;在 B 中,相交节点前有 1 个节点。...题解 法一 哈希表 使用哈希表存储链表节点,先遍历链表headA,将headA的每个节点加入哈希表,再遍历链表headB,判断遍历节点是否在哈希表中: 如果当前节点不在哈希表中,则继续遍历下一个 如果当前节点在哈希表中...当node1和node2相遇时,所指向的节点就是第一个公共节点 var getIntersectionNode = function(headA, headB) { if(!headA || !

    58620

    算法-最后一个单词的长度

    ’ ’ 的字符串,返回其最后一个单词的长度。...如果不存在最后一个单词,请返回 0 。 说明:一个单词是指由字母组成,但不包含任何空格的字符串。...return 0; return str[str.length-1].length(); } } 注意事项: 1.以空间换时间,这是此代码的思想 2.注意split的用法,返回的是一个数组...,而其中的元素是字符串 3.如果一个字符串由若干的空格,并且其没有字母表示,那么调用String的split()方法所返回的不是一个null,而是一个空数组. 4. ?...方法二:利用String内的charAt()方法,逻辑上是字符串最后开始找,没找到单词继续找,找到单词,开始记录单词长度,并且遇到的第一个空格停止循环。

    48830
    领券