
算法
文章平均质量分 57
Vivian小姐
事在人为
展开
-
前端面试知识点整理——前端题库3(字节)
算法篇:前端题库3 文章目录62.不同路径718.最长重复子数组349.两个数组的交集14.最长公共前缀 62.不同路径 动态规划法:时间空间O(mn) /** * @param {number} m * @param {number} n * @return {number} */ var uniquePaths = function(m, n) { //使用动态规划 f(i, j) = f(i - 1, j) + f(i, j - 1) 目标求f(m, n) //m行 n列原创 2021-04-02 15:54:01 · 490 阅读 · 0 评论 -
前端面试知识点整理——前端题库2(WXG)
算法篇:前端题库(WXG) 文章目录1013.将数组分成和相等的三个部分704.二分查找100.相同树257.二叉树的所有路径 1013.将数组分成和相等的三个部分 /** * @param {number[]} arr * @return {boolean} */ var canThreePartsEqualSum = function(arr) { //分成三部分 每一个部分都是sum/3 let sum = arr.reduce((a, b) => a + b);原创 2021-04-02 15:53:29 · 510 阅读 · 0 评论 -
前端面试知识点整理——前端题库1(字节)
算法篇:前端题库 文章目录209.长度最小的子数组 209.长度最小的子数组 解法一:暴力解法 时间复杂度:O(n^2) 空间复杂度:O(1) class Solution { public int minSubArrayLen(int target, int[] nums) { if(nums.length == 0) return 0; int ans = Integer.MAX_VALUE; for(int i = 0; i < nums原创 2021-04-02 15:51:46 · 879 阅读 · 0 评论 -
10道前端算法题
用js写算法题 var arr = []; function toLocaleString(num) { if (num === null) return; //转成字符串 var nums = num.toString(); //处理字符串 process(nums); } function process(nums) { if (nums.length <= 3) { arr[arr.length] = nums; } el原创 2021-03-04 10:00:30 · 725 阅读 · 1 评论 -
算法篇:集合Set
算法篇:集合Set 文章目录217.存在重复元素705.设计哈希集合 217.存在重复元素 同哈希表篇 class Solution { public boolean containsDuplicate(int[] nums) { Set<Integer> set = new HashSet<Integer>(); for (int x : nums) { if (!set.add(x)) {原创 2021-03-01 14:25:53 · 104 阅读 · 0 评论 -
算法篇:哈希表 Hash Table
算法篇:哈希表 Hash Table 文章目录知识217.存在重复元素389.找不同(用了位运算)496.下一个更大的元素 知识 217.存在重复元素 思路:使用哈希表,重复的元素不能再存一次,因此比较哈希表和原数组的长度即可 class Solution { public boolean containsDuplicate(int[] nums) { HashMap<Integer,Integer> map = new HashMap<>();原创 2021-02-28 14:42:38 · 180 阅读 · 0 评论 -
算法篇:栈Stack
算法篇:栈Stack 文章目录知识20.有效的括号496.下一个更大的元素232.用栈实现队列 知识 20.有效的括号 496.下一个更大的元素 232.用栈实现队列原创 2021-02-28 12:07:37 · 126 阅读 · 0 评论 -
算法篇:队列Queue
算法篇:队列Queue 文章目录知识933.最近的请求次数225.用队列实现栈622.设计循环队列641.设计循环双端队列 知识 933.最近的请求次数 思路:我们只考虑[t-3000,t]的个数,因此把小于t-3000的删除即可,使用列表可以方便的对头部元素进行操作,FIFO; 队列的一些方法如下: class RecentCounter { //创建一个队列进行存储t Queue<Integer> q; public RecentCounter() {原创 2021-02-28 10:18:19 · 199 阅读 · 0 评论 -
算法篇:链表Linked List
算法篇:链表Linked List 文章目录203.移除链表元素206.反转链表 203.移除链表元素 思路:在最前面增加一个节点会更方便,画图,链表的删除知识 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; }原创 2021-02-25 18:31:16 · 243 阅读 · 0 评论