PYQ Blog

「想成为真正的工程师」

Linux镜像版本

Linux Image Version

之前在下载Linux发行版镜像时,一直没有注意镜像的版本,各个发行版均下载的amd64版本。当时也想过为啥命名是amd64,并且可以在intel的机器上完美运行,64当然很好理解即64位架构。 但在下载Ubuntu12.04时,我发现除了amd64外还有i386版本,在搜索资料后,终于了解了两种版本的区别。 amd64位版本和i386版本的选择和电脑的CPU厂家没有关系,只和电脑位...

「数据结构」Prime算法和Kruskal算法

「Data Structre」Prime, Kruskal

Ⅰ. 推荐课程 【浙江大学】数据结构,浙大的数据结构讲的很精炼,不枯燥易懂,十分适合数据结构的学习。 以下笔记也是根据以该课程为主,并加以具体实现代码。 Ⅱ. 最小生成树 Prime算法和Kruskal算法均是用于解决最小生成树问题的算法,比如如何使用最小的权值(路径或者花费)将多个地点进行连通就是一个最小生成树问题。 生成树:树其实是一种特殊的图,一个连通图的生成树是一个极小的连...

「数据结构」Floyd算法

「Data Structre」Floyd

Ⅰ. 推荐课程 【浙江大学】数据结构,浙大的数据结构讲的很精炼,不枯燥易懂,十分适合数据结构的学习。 以下笔记也是根据以该课程为主,并加以具体实现代码。 Ⅱ. Floyd算法 Dijkstra算法可以求解单个点到其他点的最短路径,若要求任意两点之间的最短距离,使用Dijkstra算法则显得有些麻烦。为了解决这个问题,我们可以使用Floyd算法。 Floyd算法:Floyd算法是解决...

「数据结构」图、图的遍历

「Data Structre」Graphs and Graph Traversals

Ⅰ. 推荐课程 【浙江大学】数据结构,浙大的数据结构讲的很精炼,不枯燥易懂,十分适合数据结构的学习。 以下笔记也是根据以该课程为主,并加以具体实现代码。 Ⅱ. 图 图表示“多对多”的关系,当涉及到一点到另外一点的最短路线或最便宜的路线时就需要使用到图。 图的组成: 顶点:通常用V (Vertex) 表示顶点的集合。 边:通常用E (Edge) 表示边的集合。 ...

「数据结构」Dijkstra算法

「Data Structre」Dijkstra

Ⅰ. Dijkstra算法介绍 迪杰斯特拉算法(Dijkstra)是由荷兰计算机科学家狄克斯特拉于1959 年提出的,因此又叫狄克斯特拉算法。是从一个顶点到其余各顶点的最短路径算法,解决的是有权图中最短路径问题。迪杰斯特拉算法主要特点是从起始点开始,采用贪心算法的策略,每次遍历到始点距离最近且未访问过的顶点的邻接节点,直到扩展到终点为止。 特性: Dijkstra算法采用了BFS...

「数据结构」并查集

「Data Structre」Disjoint Sets

Ⅰ. 推荐课程 【浙江大学】数据结构,浙大的数据结构讲的很精炼,不枯燥易懂,十分适合数据结构的学习。 以下笔记也是根据以该课程为主,并加以具体实现代码。 Ⅱ. 并查集 在学习并查集前请先看如下例子,假如有10台电脑(编号为1-10),已知下列电脑之间实现了连接:1和2、2和4、3和5……,问2和7之间是否连通,一共包含多少个连通集? 在解决这个问题前我们需要明白一个特性:电脑的连接...

「数据结构」堆、哈夫曼树

「Data Structre」Heap, Huffman tree

Ⅰ. 推荐课程 【浙江大学】数据结构,浙大的数据结构讲的很精炼,不枯燥易懂,十分适合数据结构的学习。 以下笔记也是根据以该课程为主,并加以具体实现代码。 Ⅱ. 堆 堆:堆是使用数组实现的完全二叉树,其任一结点的值是其子树所有结点的最大值或最小值。 堆可分为大根堆和小根堆: 大根堆:在完全二叉树中,任何一个子树的最大值都在这个子树的根结点。 小根堆:在完全二叉树中,任何一...

「数据结构」二叉搜索树、平衡二叉树

「Data Structre」Search Binary Tree, Balanced Binary Tree

Ⅰ. 推荐课程 【浙江大学】数据结构,浙大的数据结构讲的很精炼,不枯燥易懂,十分适合数据结构的学习。 以下笔记也是根据以该课程为主,并加以具体实现代码。 Ⅱ. 二叉搜索树 二叉搜索树:也称为二叉排序树或二叉查找树 非空左子树所有键值小于其根结点的键值。 非空右子树所有键值大于其根结点的键值。 左、右子树都是二叉搜索树。 二叉搜索树的查找操作: 从根结点开始...

「数据结构」树的定义和表示

「Data Structre」Definition and Representation of Tree

Ⅰ. 推荐课程 【浙江大学】数据结构,浙大的数据结构讲的很精炼,不枯燥易懂,十分适合数据结构的学习。 以下笔记也是根据以该课程为主,并加以具体实现代码。 Ⅱ. 树的定义 树的定义:是n(n>=0)个结点构成的有限集合。 n=0时,即没有一个结点,称为空树。 n>0时,没有双亲结点的唯一结点称为根结点。 树由多个子树构成。 结点为n的树,其边的数量为n-...

「数据结构」二叉树的定义、存储结构和遍历

「Data Structre」Definition, Structure and Traversal of Binary Tree

Ⅰ. 推荐课程 【浙江大学】数据结构,浙大的数据结构讲的很精炼,不枯燥易懂,十分适合数据结构的学习。 以下笔记也是根据以该课程为主,并加以具体实现代码。 Ⅱ. 二叉树的定义 二叉树: 二叉树是有穷结点的集合 二叉树可为空。 二叉树若不为空,则由根结点,其左子树和右子树的两个不相交的二叉树构成。 二叉树的子树也为二叉树。 二叉树可以由如下5种基本形态:空、只有根...