Aries' blog

个人博客


  • 首页

  • 算法

  • 关于

  • 标签

  • 分类

  • 归档

  • 搜索

算法-排序(上)

发表于 2018-09-20 | 更新于 2019-07-01 | 分类于 算法
前言 排序对一个程序员来说,可能都不会陌生。大部分编程语言中,也都提供了排序函数。在平常的项目中,也经常会用到排序。排序非常重要,所以会分几节详细讲一讲经典的排序算法。 排序算法太多了,可能有的连名字都没有听说过,比如猴子排序、睡眠排序、面条排序等等。这里只列举众多排序算法众多的一小撮,也是最经典 ...
阅读全文 »

算法-递归

发表于 2018-09-18 | 更新于 2019-06-26 | 分类于 算法
前言 推荐注册返佣金这个功能我想你应该不陌生吧?现在很多app都有这个功能。这个功能中,用户A推荐用户B注册,用户B又推荐了用户C注册,我们可以说C的“最终推荐人”为用户A,用户B的“最终推荐人”也为用户A,用户A没有“最终推荐人”。 一般来说,我们会通过数据库记录这种推荐关系,在数据库表中,我们 ...
阅读全文 »

算法-队列

发表于 2018-09-16 | 更新于 2019-06-26 | 分类于 算法
前言 我们知道,CPU资源是有限的,任务的处理逻辑与线程个数并不是正相关。相反,过多的线程反而会导致CPU频繁切换,处理性能下降。所以,线程池的大小一般都是综合考虑要处理任务的特点与硬件环境,来事先设置的。 当我们向一个固定大小的线程池中请求一个线程时,如果线程池中没有空闲资源了,这个时候线程池如 ...
阅读全文 »

算法-栈

发表于 2018-09-15 | 更新于 2019-10-14 | 分类于 算法
前言 浏览器的前进、后退功能,我想你肯定很熟悉吧? 当你依次访问完一连串页面a-b-c-d之后,点击浏览器的后退按钮,就可以查看之前浏览过的页面c-b-a。当后退到a页面之后,点击前进按钮,可以重新进入页面b-c-d。但是如果进入页面b之后,点击了两一个页面,那就无法通过前进后退页面进入c-d了。 ...
阅读全文 »

算法-怎样写好链表代码

发表于 2018-09-13 | 更新于 2019-06-26 | 分类于 算法
上一节讲了链表相关的基础知识,有人可能会说基础知识我都掌握了,但是写链表代码还是很费劲怎么办?确实是这样的,想要写好链表代码并不是容易的事,尤其是那些复杂的链表操作,比如链表反转、有序链表合并等,写的时候非常容易出错。 为什么链表代码这么难写?究竟怎么样才能比较轻松的写出正确的链表代码呢? 只要愿意 ...
阅读全文 »

算法-链表

发表于 2018-09-12 | 更新于 2019-06-26 | 分类于 算法
前言 今天我们来聊聊“链表 LinkedList”这个数据结构,学习链表有什么用呢,我们先来讨论一个经典的链表使用场景,那就是LRU缓存淘汰算法。 缓存是一种提高数据读取性能的技术,在硬件设计、软件开发中都有着非常广泛的应用,比如常见的CPU缓存、数据库缓存、浏览器缓存等等。 缓存的大小有限,当缓 ...
阅读全文 »

算法-数组

发表于 2018-09-10 | 更新于 2019-11-27 | 分类于 算法
前言 提到数组,我想你肯定不陌生,甚至还会自信的说他很简单。 是的,在每一种编程语言中,基本都会有数组这种数据类型。尽管数组看起来非常基础、简单,但是我估计很多人都没有理解这个基础数据结构的精髓。 在大部分的数据结构中,数组都是从0开始编号的,但是为什么数组要从0开始,而不是1开始呢?从1开始不是 ...
阅读全文 »

算法-最好、最坏、平均、均摊时间复杂度

发表于 2018-09-09 | 更新于 2019-06-26 | 分类于 算法
前言 前面我们讲过复杂度的大O表示法和几个分析技巧,还举了一些复杂度分析的例子,掌握了这些内容,对于复杂度分析这个知识点,已经达到及格线了。 这篇会着重讲一下复杂度分析的四个复杂度分析方面的知识: 最好时间情况复杂度、最坏情况时间复杂度、平均情况时间复杂度、均摊时间复杂度。 最好、最坏时间复杂度 ...
阅读全文 »

算法-复杂度分析

发表于 2018-09-08 | 更新于 2020-02-28 | 分类于 算法
前言 我们都知道,数据结构和算法本身解决的是“快”和“省”的问题,即如何让代码运行的更快、更省存储空间。那如何来衡量算法的“快”和“省”呢?这就要用到复杂度分析:时间、空间复杂度分析。复杂度分析是整个算法学习的精髓,掌握了它,数据结构和算法的内容基本就掌握了一半。 为什么需要复杂度分析 有人说, ...
阅读全文 »

hexo-安装及配置

发表于 2018-09-07 | 更新于 2019-06-26 | 分类于 hexo
前言曾几何时,你是否也想有个自己的博客,抒发自己的心情,总结自己的得失,与人分享喜悦、哀伤、愤怒、忧愁,那么这篇文章你就必须看了,非常简单搭建一个自己的开源博客。 一、预备1、安装Nodejs及npm Nodejs下载地址: 官网下载地址:https://nodejs.org/zh-cn/downl ...
阅读全文 »
1…789
无名万物

无名万物

我不生产知识,我只是知识的搬运工。

81 日志
10 分类
58 标签
友情链接
  • Web前端导航
  • 创造狮导航
  • 前端书籍资料
  • 掘金酱
  • V2EX
  • 印记中文
© 2017 – 2020 无名万物