摘要: 问题 这个问题来自于 LeetCode 第 679 号问题。 你有 4 张写有 1 到 9 数字的牌。你需要判断是否能通过 *,/,+,-,(,) 的运算得到 24。 示例 1: 示例 2: 注意: 解析 在 24点 游戏中,总共有 ✖️ 4 ✖️ ✖️4 ✖️ ✖️ 4 = 9126 中情况,如果 阅读全文
posted @ 2019-02-11 16:03 五分钟学算法 阅读(2773) 评论(5) 推荐(5) 编辑
摘要: 详解什么是平衡二叉树(AVL)(修订补充版) 前言 Wiki:在计算机科学中,AVL树是最早被发明的自平衡二叉查找树。在AVL树中,任一节点对应的两棵子树的最大高度差为1,因此它也被称为高度平衡树。查找、插入和删除在平均和最坏情况下的时间复杂度都是 O(logn)。增加和删除元素的操作则可能需要借由 阅读全文
posted @ 2019-02-02 11:15 五分钟学算法 阅读(1055) 评论(0) 推荐(2) 编辑
摘要: 前言 Wiki:在计算机科学中,AVL树是最早被发明的自平衡二叉查找树。在AVL树中,任一节点对应的两棵子树的最大高度差为1,因此它也被称为高度平衡树。查找、插入和删除在平均和最坏情况下的时间复杂度都是O(logn)。增加和删除元素的操作则可能需要借由一次或多次树旋转,以实现树的重新平衡。AVL 树 阅读全文
posted @ 2019-01-31 09:56 五分钟学算法 阅读(20551) 评论(1) 推荐(3) 编辑
摘要: 国外 IT 教育学院 Educative.io 创始人 Fahim ul Haq 写过一篇过万赞的文章《The top data structures you should know for your next coding interview》,总结了程序员面试中需要掌握的 8 种数据结构知识。 阅读全文
posted @ 2019-01-25 08:54 五分钟学算法 阅读(991) 评论(1) 推荐(2) 编辑
摘要: 佩奇排名介绍 佩奇排名是根据页面之间的链接结构计算页面的值的一种算法。下面我们通过动画来理解进行计算的具体流程。 假设一个正方形表示一个 WEB 页面,一个箭头表示一个页面之间的链接。 此图表明下面 3 页包含指向上面 1 页的链接 在佩奇排名算法中,网页指向的链接越多,页面被确定为越重要。 因此, 阅读全文
posted @ 2019-01-22 09:24 五分钟学算法 阅读(2054) 评论(3) 推荐(2) 编辑
摘要: 这是一道看完答案会觉得很简单,但做之前很难想到答案的题目!!! 不信? Let us go ! 题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入 阅读全文
posted @ 2019-01-16 09:59 五分钟学算法 阅读(2470) 评论(0) 推荐(12) 编辑
摘要: 奇葩排序第二弹:) 从冒泡排序开始 先来看回顾一下冒泡排序的思想和原理。 冒泡排序的思想 冒泡排序的每一个元素都可以像小气泡一样,根据自身大小,一点一点向着数组的一侧移动。 冒泡排序算法的原理 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一对到结尾的 阅读全文
posted @ 2019-01-11 08:50 五分钟学算法 阅读(838) 评论(0) 推荐(4) 编辑
摘要: 散列表 散列表(Hash table,也叫哈希表),是根据键(Key)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表。 散列函数 散列函数,顾名思义,它是一 阅读全文
posted @ 2019-01-07 09:35 五分钟学算法 阅读(2087) 评论(0) 推荐(3) 编辑
摘要: Follow: MisterBooo · GitHub 如果文章代码不便阅读,可点击这里查看原文:) 在学习「数据结构和算法」的过程中,因为人习惯了平铺直叙的思维方式,所以「递归」与「动态规划」这种带循环概念(绕来绕去)的往往是相对比较难以理解的两个抽象知识点。 程序员小吴打算使用动画的形式来帮助理 阅读全文
posted @ 2019-01-04 08:49 五分钟学算法 阅读(9833) 评论(2) 推荐(8) 编辑
摘要: GitHub Repo:Sort Article Follow: MisterBooo · GitHub 排序算法是《数据结构与算法》中最基本的算法之一。 排序算法可以分为内部排序和外部排序。 内部排序是数据记录在内存中进行排序。 而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程 阅读全文
posted @ 2019-01-03 08:54 五分钟学算法 阅读(26299) 评论(37) 推荐(100) 编辑