面试
Peas.
一个追求优质代码的编程爱好者
展开
-
年后找工作筹备计划
一、需要了解并能够口述的面试题 1.1 JS 懒加载 闭包1、闭包2、闭包3 防抖节流(此处联系user端tabs随滚动触发事件) 内存泄露 深拷贝(深拷贝需要能够默写) js事件模型 cookie webstorage 循环引用 变量提升 原型链 同步异步(视频) js任务(视频) 以上两个是一个系列视频的一部分,可以选择把这个系列视频看完 1.2 es6 阅读文档 1.3 css3 html5 等基础知识 该文档对应的css和html知识 1.4 promise(属于js,但需要看视频) 视频地址原创 2022-01-25 13:46:27 · 906 阅读 · 0 评论 -
《动态规划》买股票的最佳时机
记录一道非常有趣的动态规划问题 一、题目位置 https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock/ 二、解法 1. 暴力解法 public int maxProfit(int[] prices) { if(prices == null) return 0; // 状态:利润 // 选择:购股日期 // dp(n)定义:输入一个数字n代表.原创 2021-03-24 13:52:54 · 82 阅读 · 0 评论 -
动态规划解题套路框架
学习算法不在一招一式,而是培养框架思维。 所谓框架思维,就是套路。不管增删改查,这些代码都是永远无法脱离的结构,你可以把这个结构化作大纲,根据具体问题在框架上添加代码就行了。 一、认识数据结构 数据结构是工具,算法是通过合适的数据结构解决待定为你的方法。 1.1 数据结构存储方式 数据结构的底层存储方式有两种: 数组(顺序存储) 链表(链式存储) 1.2 数据结构种类 链表 数组 散列表 树 图 队列 栈 堆 1.3 数据结构的基本操作 数据结构的操作无非:增删改查 1.4 数据结构遍历 +.原创 2021-03-14 20:20:45 · 164 阅读 · 0 评论 -
复杂度、二分法、标记法
我们进行编程,无非就是对数据的操作打交道。数据结构与算法就是为了在设计程序的时候更省时、更省内存的处理数据。 一、复杂度 我们怎么才能决定哪个程序设计的更省时、省位置? 如果仅仅通过程序开始到结束运行时间的差额和内存使用情况来计算会出现以下几个问题。 硬件依赖:当同一个程序运行在不同配置的电脑电脑时运行的时间可能不同。 测试结果需要事后才能计算:一般情况下,我们的程序希望在伪码阶段就能够预测程序的性能。 测试结果受原始数据特性影响大:举个例子,在1~100中查找一个数组,如果按照暴力的解法,而恰恰需要.原创 2021-02-02 13:22:00 · 625 阅读 · 0 评论