首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
算法
订阅
芥末酱
更多收藏集
微信扫码分享
微信
新浪微博
QQ
10篇文章 · 0订阅
我接触过的前端数据结构与算法
我们已经讨论过了前端与计算机基础的很多话题,诸如SQL、面向对象、多线程,本篇将讨论数据结构与算法,以我接触过的一些例子做为说明。 1. 递归 递归就是自己调自己,递归在前端里面算是一种比较常用的算法。假设现在有一堆数据要处理,要实现上一次请求完成了,才能去调下一个请求。一个是…
JavaScript专题之数组去重
JavaScript 专题系列第三篇,讲解各种数组去重方法,并且跟着 underscore 写一个 unique API 前言 数组去重方法老生常谈,既然是常谈,我也来谈谈。 双层循环 也许我们首先想到的是使用 indexOf 来循环判断一遍,但在这个方法之前,让我们先看看最原…
十大经典排序算法总结(JavaScript描述)
读者自行尝试可以想看源码戳这,博主在github建了个库,欢迎star.读者可以Clone下来本地尝试。此博文配合源码体验更棒哦~~~ 输出:n个数的排列:a1',a2',a3',...,an',使得a1'<=a2'<=a3'<=...<=an'。 再讲的形象点就是排排坐,调座…
浅谈什么是动态规划以及相关的「股票」算法题
动态规划算法是通过拆分问题,定义问题状态和状态之间的关系,使得问题能够以递推(或者说分治)的方式去解决。在学习动态规划之前需要明确掌握几个重要概念。 阶段:对于一个完整的问题过程,适当的切分为若干个相互联系的子问题,每次在求解一个子问题,则对应一个阶段,整个问题的求解转化为按照…
hash 结构的另一种形式 —— 开放地址法
HashMap 无 Java 人不知无 Java 人不晓,它使用开链法处理 hash 碰撞,将碰撞的元素用链表串起来挂在第一维数组上。但是并不是所有语言的字典都使用开链法搞定的,比如 Python,它使用的是另一种形式 —— 开放地址法。相比 HashMap 是二维的结构,它只…
你所不知道的快速排序(js实现)
注:本文是在看了两篇大牛的博客后,通过整理供自己学习快速排序所做笔记,分享出来方便大家学习。如需进一步了解可以查看文中博客链接。 一. 快速排序是什么 快速排序是图灵奖得主C. A. R. Hoare(1934--)于1960时提出来的。 快速排序是对冒泡排序的一种改进。它的基…
javaScript的数据结构与算法(二)——链表
前言 本文是博主深感算法方面的不足,作的一系列读书笔记和源码分析。原文地址:学习javascript数据结构(二)——链表,觉得有用的话可以给个star,谢谢啦。作者:wengjq 1、链表 链表存储有序的元素集合,但不同于数组,链表中的元素在内存中并不是连续放置的。每个元素由…
javaScript的数据结构与算法(四)——字典和散列表
前言 本文是博主深感算法方面的不足,作的一系列读书笔记和源码分析。原文地址:学习javascript数据结构(四)——字典和散列表,觉得有用的话可以给个star,谢谢啦。作者:wengjq 1、字典 字典存储的是[键,值]对,其中键名是用来查询特定元素的。字典和集合很相似,集合…
一些可以让你装逼、让人眼前一亮的算法技巧总结
今天和大家讲讲,在做算法题时常用的一些技巧。对于平时没用过这些技巧的人,或许你可以考虑试着去看看在实践中能否用的上这些技巧来优化问题的解,相信一定会让你有所收获,不然你看我。 1. 巧用数组下标 数组的下标是一个隐含的很有用的数组,特别是在统计一些数字,或者判断一些整型数是否出…
三分钟看完「分糖果」算法问题
题目来源于 LeetCode 上第 575 号问题:分糖果。题目难度为 Easy,目前通过率为 60.2% 。 给定一个偶数长度的数组,其中不同的数字代表着不同种类的糖果,每一个数字代表一个糖果。你需要把这些糖果平均分给一个弟弟和一个妹妹。返回妹妹可以获得的最大糖果的种类数。 …