Robbin16 / algorithm-js

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

  • 时间复杂度 O(1) < O(log n) < O(n) < O(n^2) < O(2^n) < O(n!) n 表示执行次数
  • 栈(stack) 先进后出 javascript 没有栈 但是可以拿数组可以表示栈
    • [].push() 入栈 [].pop()出栈
    • 应用场景:
      • 十进制转二进制比如 35/2(余 1) 17/2(余 1) 8/2(余 0) 4/2(余 0) 2/2(余 0) 1/2(余 1) 最后将余数从低到高排列(100011) 因为最先得到的余数被排在最后,符合栈的特性(先进后出)
      • 有效括号"(((()))))))"编辑器判断括号有效没效其实就是判断括号有没有闭合,如果左括号入栈,右括号出栈,最后判断栈里有没有数据,如果有就是有括号没有闭合,如果没有就是括号都闭合(如果右括号比左括号多呢?)
      • 编译器里函数调用堆栈,最后执行的函数最先退出(只适用于函数调用嵌套?),符合栈的特性。

About


Languages

Language:JavaScript 100.0%