数据结构/算法
大笨儿钟
这个作者很懒,什么都没留下…
展开
-
JavaScript算法系列 --- LRU 缓存机制
原题来自力扣,这里用到了JS中的Map这个数据结构。利用散列表和双向链表实现。 力扣LRU原题 var LinkNode = function(key,value){ this.key = key; this.value = value; this.next = null; this.pre = null; } var DoubleLinkedList = func...原创 2020-04-09 15:44:55 · 680 阅读 · 0 评论 -
JavaScript算法系列-求一个数组的中心索引
给定一个整数类型的数组 nums,请编写一个能够返回数组“中心索引”的方法。 我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。 如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。 思路:假如存在该中心索引i,那么此时记数组nums[]所有元素的和为sum,该中心索引左边的数列之和为left sum,...原创 2019-12-24 13:21:29 · 235 阅读 · 0 评论 -
JavaScript 算法系列---动态规划
很久之前接触过这样一道题目,总共有十层阶梯,从1层开始往上爬,每次可以上1层或者2层,问到10层总共有多少种方法? 思路:这个问题就是动态规划的一个经典例子,所谓动态规划,就是把复杂的问题进行拆解,拆解成一个个子问题,而这类问题最后非常适合使用递归来解决。诸如这道题目,可以记到某层阶梯的走法为F(n),那么到10层阶梯就是F(10)。 那么F(10)等于什么呢,这里进行假设,如果只差最后一次就可以...原创 2019-12-24 11:11:30 · 308 阅读 · 0 评论 -
JavaScript算法系列--- 找出数组中俩个整数,使得他们的和等于给定的另一个数
给定一个整数数组以及一个整数,从这个数组中找到俩个数,使得他们的和等于这个整数,最后返回这俩个数在数组中的索引 举个例子 array = [1,2,3,4]; sum = 7; getIndexArr(array,sum); // [2,3] 数组里面3和4的和刚好是7,所以返回他们在数组中的位置2和3 接下来来做一个简单的实现。 方法一: function getIndexArr(array,...原创 2019-02-15 23:00:02 · 1525 阅读 · 0 评论