240 发简信
IP属地:四川
  • 120
    能力成长速度

    普通人的能力成长速度是分阶段的,个人觉得轨迹如下图: 起步阶段,成长速度很慢;攀升阶段,速度变快;精进阶段,回归缓慢。 学生时代,有的同学先学编程,我起步他攀升;同样的任务,...

  • Less is More

    选择太多怎么办?人民艺术家徐锦江老师的回答是:我全都要! 面对选择,想全盘通吃。有一次双十一买书,屯了一二十本,金融的、心理的、编程的…这读完不得起飞了哇,于是早上英语,中午...

  • MIME 类型判断

    MIME (Multipurpose Internet Mail Extensions) 是描述消息内容类型的因特网标准。Node.js在回应http请求时,要返回一个文件的...

  • 理解async/await

    首先明确一个问题,为什么 Node.js 需要异步编程? JavaScript 是单线程的,在发出一个调用时,在没有得到结果之前,该调用就不返回,意思就是调用者主动等待调用结...

  • JS中的一些坑

    牛客网上的一个题: 执行完上面代码后,arr 的值是? 觉得 forEach 方法中的 item 参数是按值传递,所以不会改变原来的 arr,答案为:[{a:1},{}] 。...

  • Vue爬坑

    在这里记录一些vue开发过程中的小tips。 使用ESlint自动修复代码格式:如果使用了 ESlint ,在 packagec.json 文件中有这样一些配置,将 lint...

  • 120
    从斐波那契数列看递归和动态规划

    大名鼎鼎的斐波那契数列:0,1,1,2,3,5,8,13,21......使用数学归纳法可以看出其规律为:f(n) = f(n-1) + f(n-2)。 递归 下面首先直接使...

  • JS实现希尔排序

    希尔排序本质上是一种插入排序,但是对数列进行了等间隔分组处理,在每一组中做插入排序,这一优化使得原本 O(n^2) 的时间复杂度一下降为 O(nlogn)。 基本思想 希尔...

  • Git常用命令

    git add -A stages All git add . stages new and modified, without deleted git add -u sta...

  • 120
    JS实现插入排序

    直接插入排序的时间复杂度为 O(n^2) ,相较于复杂度为 O(nlogn) 的快速排序、归并排序、堆排序、希尔排序,插入排序可谓相形见绌。但是,插入排序真的一无是处吗? 答...

  • 120
    JS实现归并排序

    递归的内存堆栈分析 一直对递归理解不深,原因是递归的过程很抽象,分析不清内存堆栈的返回过程。偶然google到一篇博文递归(不得不说,技术问题还是要多google),对递归过...

  • 120
    JS实现堆排序

    堆的预备知识 堆是一个完全二叉树。 完全二叉树: 二叉树除开最后一层,其他层结点数都达到最大,最后一层的所有结点都集中在左边(左边结点排列满的情况下,右边才能缺失结点)。 大...