![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 88
秃如其来的秃头
种一棵树最佳时间是十年前,其次是现在!
如果一直躲在舒适区,最终一定会进入恐慌区。
展开
-
JavaScript版数据结构与算法-链表
JavaScript版数据结构与算法-链表链表多个元素组成的列表元素存储不连续,用next指针连在一起链表 VS 数组**数组:**增删非首尾元素时往往需要移动元素**链表:**增删非首尾元素,不需要移动元素,只需要更改next的指向即可js的链表js中是没有链表可以用Object模拟链表const a = { val : 'a'}const b = { val : 'b'}const c = { val : 'c'}const d = { val : 'd'}a.原创 2021-01-09 15:25:17 · 292 阅读 · 0 评论 -
数据结构与算法之美-数组 vs 链表
数据结构与算法之美-数组 vs 链表数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。线性表线性表就是数据排成像一条线一样的结构。每个线性表上的数据最多只有前和后俩个方向,其实除了数组、链表、队列、栈等也是线性表结构非线性表比如二叉树、堆、图等。之所以叫非线性,是因为,在非线性表中,数据之间并不是简单的前后关系。连续的内存控件和相同类型的数据随机访问数组和链表区别链表适合插入、删除,时间复杂度O(1);数组适合查找,查原创 2021-01-08 17:09:57 · 139 阅读 · 0 评论 -
复杂度分析
复杂度分析复杂度分析:分析、统计算法得执行效率和资源消耗【注】:大 O 这种复杂度表示方法只是表示一种变化趋势时间复杂度分析【注】:它表示的是一个算法执行效率与数据规模增长的变化趋势,所以不管常量的执行时间多大,我们都可以忽略掉。因为它本身对增长趋势并没有影响。时间复杂度的全称是渐进时间复杂度,表示算法的执行时间与数据规模之间的增长关系。只关注循环执行次数最多的一段代码加法法则:总复杂度等于量级最大的那段代码的复杂度乘法法则:嵌套代码的复杂度等于嵌套内外代码复杂度的乘积几种常见时原创 2021-01-07 17:27:53 · 112 阅读 · 0 评论 -
Js千分位格式化金额数字的方法
Js千分位格式化金额数字的方法应用场景:在比较大小的时候,金额的千分位格式需要去掉,才能比较大小!1.添加千分位function fmoney(s, n) { n = n > 0 && n < = 20 ? n : 2; s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed...原创 2019-11-21 17:35:36 · 380 阅读 · 0 评论 -
前端JS面试题
前端JS面试题call 和 apply 的区别 是什么,哪一个性能更好一些?传参的区别call 是一个个传递apply是传递一个数组bind 是预先处理,但是不会立即执行但是 call 在基于ES6的展开运算符也可以将数组中的每一项传递给函数call apply 都是 Function 原型上面的方法,而每个函数作为 Function 的实例,可以调取其方法在...原创 2019-10-31 14:26:46 · 289 阅读 · 0 评论 -
JS数组去重的多种方法
JS数组去重的多种方法解决方案:1、依次拿出数组中的每一项(排除最后一项,最后一项后面没有需要比较的内容)2、和当前拿出项后面的每一项依次比较3、如果发现有重复的,我们把找到的这个重复向在原有数组中删除掉方案一:双重for 循环var ary = [1,2,3,2,2,7,9,2,3,5,2,8]for(var i =0; i<ary.length-1;i++){ for(...原创 2019-08-20 16:03:22 · 109 阅读 · 0 评论