数据结构与算法区块链哈希加密算法,看一篇就懂算你狠 来讲讲什么是哈希算法。 哈希是一种加密算法。 哈希函数(Hash Function),也称为散列函数或杂凑函数。哈希函数是一个公开函数,可以将任意长度的消息M映射成为一个长度较短且长度固定的值H(M)... 2019-03-303,580 viewsComments区块链 哈希算法 阅读全文
数据结构与算法隐马尔可夫(HMM)概率学、前/后向算法、Viterbi算法 HMM的模型 图1 如上图所示,白色那一行描述由一个隐藏的马尔科夫链生成不可观测的状态随机序列,蓝紫色那一行是各个状态生成可观测的随机序列 话说,上面也是个贝叶斯网络,而贝叶斯网络中有这么一种,如下... 2019-03-303,022 viewsComments 阅读全文
数据结构与算法Sunday算法:模式串匹配效率提高 Sunday算法是Daniel M.Sunday于1990年提出的字符串 模式匹配 。其核心思想是:在匹配过程中,模式串发现不匹配时,算法能跳过尽可能多的字符以进行下一步的匹配,从而提高了匹配效率。 ... 2019-03-302,733 viewsComments 阅读全文
数据结构与算法「二叉树」算法面试题:前序、中序、后序、层序遍历 1. 二叉树的前序遍历 题目来源于 LeetCode 第 144 号问题:二叉树的前序遍历。 题目描述 给定一个二叉树,返回它的 前序 遍历。 题目解析 用**栈(Stack)**的思路来处理问题。 ... 2019-03-196,460 viewsComments二叉树 面试题 阅读全文
数据结构与算法机器学习算法笔记:主成分分析PCA 主成分分析(Principal components analysis,以下简称PCA)是最重要的降维方法之一。在数据压缩消除冗余和数据噪音消除等领域都有广泛的应用。一般我们提到降维最容易想到的算法就... 2019-03-082,206 viewsComments机器学习 阅读全文
数据结构与算法机器学习算法笔记:树回归 线性回归模型中,其前提是假设全局的数据之间是线性的,通过拟合所有的样本点,训练得到最终的模型。然而现实中的很多问题是非线性的,当处理这类复杂的数据的回归问题时,特征之间的关系并不是简单的线性关系,此时... 2019-03-082,457 viewsComments机器学习 阅读全文
数据结构与算法机器学习算法笔记:岭回归、Lasso回归和ElasticNet回归 处理较为复杂的数据的回归问题时,普通的线性回归算法通常会出现预测精度不够,如果模型中的特征之间有相关关系,就会增加模型的复杂程度。当数据集中的特征之间有较强的线性相关性时,即特征之间出现严重的多重共线... 2019-03-083,709 viewsComments机器学习 阅读全文
数据结构与算法机器学习算法学习笔记:逻辑回归 逻辑回归算法的名字里虽然带有“回归”二字,但实际上逻辑回归算法是用来解决分类问题的。简单来说, 逻辑回归(Logistic Regression)是一种用于解决二分类(0 or 1)问题的机器学习方法... 2019-03-082,864 viewsComments机器学习 阅读全文
数据结构与算法链表算法搞定面试:万字长文搞定一切 2 输出单链表倒数第 K 个节点 2.1 问题描述 题目:输入一个单链表,输出此链表中的倒数第 K 个节点。(去除头结点,节点计数从 1 开始) 2.2 两次遍历法 2.2.1 解题思想 (1)遍历单... 2019-03-042,777 viewsComments链表 面试题 阅读全文
数据结构与算法Python数据结构与算法之列表(链表linked list)简单实现 Python 中的 list 并不是我们传统(计算机科学)意义上的列表,这也是其 append 操作会比 insert 操作效率高的原因。传统列表——通常也叫作链表(linked list)——通常是... 2019-02-222,113 viewsCommentsPython 阅读全文
数据结构与算法Python二叉搜索树与双向链表转换实现方法和技巧 Python二叉搜索树与双向链表转换实现方法,涉及Python二叉搜索树的定义、实现以及双向链表的转换技巧,具体如下: # encoding=utf8 ''' 题目:输入一棵二叉搜索树,将该二叉搜索树... 2019-02-221,658 viewsCommentsPython 阅读全文
数据结构与算法python环形单链表数据结构的约瑟夫算法问题 一个环形单链表,从头结点开始向后,指针每移动一个结点,就计数加1,当数到第m个节点时,就把该结点删除,然后继续从下一个节点开始从1计数,循环往复,直到环形单链表中只剩下了一个结点,返回该结点。 这个问... 2019-02-222,079 viewsCommentsPython 阅读全文
数据结构与算法Python数据结构与算法单链表、循环链表定义与用法实例 实例讲述了Python数据结构与算法之链表定义与用法。 (1)从链表节点的定义开始,以类的方式,面向对象的思想进行链表的设计 (2)链表类插入和删除等成员函数实现时需要考虑的边界条件, prepend... 2019-02-222,374 viewsCommentsPython 阅读全文
数据结构与算法算法学习:二进制的妙用 世界上有10种人,一种是看得懂二进制的,一种是看不懂的。 如果你看懂了这个笑话,这篇文章就是适合你读的了 Single Number leetcode 上有一道这样的题,Single Number,题... 2019-02-103,878 viewsComments 阅读全文
数据结构与算法Bitmap算法图解,写给非计算机图形专业者 两个月之前—— 为满足用户标签的统计需求,小灰利用Mysql设计了如下的表结构,每一个维度的标签都对应着Mysql表的一列: 要想统计所有90后的程序员该怎么做呢? 用一条求交集的SQL语句即可: S... 2019-02-022,876 viewsComments 阅读全文
数据结构与算法HashMap是什么?看漫画吧 众所周知,HashMap是一个用于存储Key-Value键值对的集合,每一个键值对也叫做Entry。这些个键值对(Entry)分散存储在一个数组当中,这个数组就是HashMap的主干。 HashMap... 2019-02-021,914 viewsComments 阅读全文
数据结构与算法平衡二叉树(AVL)图解(修订补充版) 1 为什么要有平衡二叉树 二叉搜索树一定程度上可以提高搜索效率,但是当原序列有序时,例如序列 A = {1,2,3,4,5,6},构造二叉搜索树如图 1.1。依据此序列构造的二叉搜索树为右斜树,同时二... 2019-02-023,856 viewsComments二叉树 阅读全文
数据结构与算法高难度算法:希尔排序算法图解与代码演示 希尔排序 希尔排序,也称递减增量排序算法,是插入排序的一种更高效的改进版本。但希尔排序是非稳定排序算法。 希尔排序是基于插入排序的以下两点性质而提出改进方法的: 插入排序在对几乎已经排好序的数据操作时... 2019-02-023,030 viewsComments排序算法 阅读全文
数据结构与算法虚拟DOM和Diff算法入门 什么是虚拟Dom 我们知道我们平时的页面都是有很多Dom组成,那虚拟Dom(virtual dom)到底是什么,简单来讲,就是将真实的dom节点用JavaScript来模拟出来,而Dom变化的对比,放... 2019-01-312,480 viewsComments 阅读全文
数据结构与算法链表的数据结构与算法图解(单项、双项) 数组是软件开发过程中非常重要的一种数据结构,但是数组至少有两个局限: 编译期需要确定元素大小 数组在内存中是连续的,插入或者删除需要移动数组中其他数据 数组适合处理确定长度的,对于插入或者删除不敏感的... 2018-12-203,906 viewsComments链表 阅读全文
数据结构与算法链表数据结构与算法图解(跳跃链表、自组织链表) 解决普通链表查找的问题。首先分析问题的瓶颈,对于查找,自然是从头开始顺序查找到尾部,那么怎么才能更快查找到目标元素呢?将链表中的元素排序可以加速查找过程,但仍需要顺序查找。因此,链表最好允许跳过某些节... 2018-12-203,665 viewsComments链表 阅读全文
数据结构与算法二叉树三种遍历数据结构图解及代码实现 二叉树的遍历是指从根结点出发,按照某种次序依次访问二叉树中所有结点,使得每个结点被访问一次且仅被访问一次。 在二叉树的遍历中存在三种较为常用的遍历方式:前序遍历、中序遍历、后序遍历。接下来我将尝试着用... 2018-11-194,601 viewsComments二叉树 阅读全文
数据结构与算法Floyd多源最短路径算法图解 Floyd算法 Floyd是一种经典的多源最短路径算法,它通过动态规划的思想来寻找给定加权图中的多源点之间的最短路径,算法时间复杂度是O(n3)。之所以叫Floyd是因为该算法发明人之一是Robert... 2018-11-127,691 viewsComments 阅读全文
数据结构与算法Radix基数树的数据结构和算法图解 Radix树 Radix树,即基数树,也称压缩前缀树,是一种提供key-value存储查找的数据结构。与Trie不同的是,它对Trie树进行了空间优化,只有一个子节点的中间节点将被压缩。同样的,Rad... 2018-11-054,800 viewsComments 阅读全文