数据结构与算法
文章平均质量分 70
阿拉阿伯
除了自己的无知,
我什么都不懂。
展开
-
深度优先搜索
与广度优先搜索不同的是,深度优先搜索会优先考虑最近新遇到的搜索状态。所以算法会沿着一条路往下走,直到遇到目标状态,或者一条死路。原创 2021-02-19 10:14:38 · 147 阅读 · 0 评论 -
广度优先搜索
广度优先搜索是一个按顺序依次尝试可能的搜索选项的算法。换句话说,它每次都会选择尝试最先发现的但还没有尝试过的选项。原创 2021-02-18 17:43:05 · 401 阅读 · 0 评论 -
二分搜索
二分搜索算法用于高效地在有序数组A中查找一个目标值v。 和线性搜索不同,二分搜索利用数据结构中的信息让搜索更高效。高效算法的关键是信息。原创 2021-02-18 16:45:34 · 349 阅读 · 0 评论 -
PageRank背后的数学
转载自 谷歌背后的数学 --卢昌海一. 引言在如今这个互联网时代, 有一家公司家喻户晓——它自 1998 年问世以来, 在极短的时间内就声誉鹊起, 不仅超越了所有竞争对手, 而且彻底改观了整个互联网的生态。 这家公司就是当今互联网上的第一搜索引擎: 谷歌 (Google)。在这样一家显赫的公司背后, 自然有许许多多商战故事, 也有许许多多成功因素。 但与普通商战故事不同的是, 在谷歌的成功背...原创 2019-05-13 15:30:11 · 731 阅读 · 0 评论 -
二叉树的层次遍历(层次遍历,自底向上的层次遍历,锯齿形层次遍历)
题目描述给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。给定一个二叉树,返回其节点值自底向上的层次遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)给定一个二叉树,返回其节点值的锯齿形层次遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。例如:给定二叉树 [3,9,20,null,null,15,7], ...原创 2019-05-13 15:51:21 · 1656 阅读 · 0 评论 -
二叉树的前序,中序,后序遍历
二叉树的前序遍历题目描述给定一个二叉树,返回它的 前序 遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,2,3]题目解析用**栈(Stack)**的思路来处理问题。前序遍历的顺序为根-左-右,具体算法为:把根节点 push 到栈中循环检测栈是否为空,若不空,则取出栈顶元素,保存其值看其右子节点是否...原创 2019-05-13 16:38:31 · 248 阅读 · 0 评论 -
算法 —— 两数之和,三数之和,四数之和
两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]方法一:...原创 2020-01-20 14:55:18 · 532 阅读 · 0 评论 -
堆排序
本文介绍了堆排序的原理,排序流程,以及dart实现原创 2020-01-15 12:12:44 · 173 阅读 · 0 评论