交流QQ群:491229003[IOS交流群] / 491310686[ReactNavite交流群]

本站处于开发中,有不妥的地方请及时与我本人联系

Python 入门基础知识 - 科学计算 - NumPy和SciPy

科学计算科学计算是计算机应用的主要内容之一。开源软件Scilab和商业软件MATLAB都是以科学计算为主的应用软件。使用Python同样可以进行矩阵运算、数值分析等。NumPy和SciPy简介NumPy和SciPy是Python中用以实现科学计算的模块包。NumPy主要提供了数组对象、基本的数组函数和傅里叶变换的相关函数。SciPy依赖于NumPy,SciPy提供了更多的计算工具,例如绘制图形等。1、安装NumPy和SciPy执行下面的命令安装NumPypip install...

Python 入门基础知识 - 数据结构与算法 - 排序

排序排序相对于查找来说要复杂的多,排序的方法也较多,有冒泡排序、希尔排序、二叉树排序和快速排序等,其中二叉树排序是比较有意思的一种排序方法,而且也便于操作。二叉树排序的过程主要是二叉树的建立和遍历的过程。例如有一组数据"3,5,7,20,44,2,15,30",则二叉树的建立过程如下1、首先将第一个数据3放如根节点2、将数据5与节点中的数据3比较,由于5大于3,则将5放入3的右子树中3、将数据7与根节点中的数据3比较,由于7大于3,则将7放入3的右子树中,由于2已经有右子树5,将7与5比较,因为7大...

Python 入门基础知识 - 数据结构与算法 - 查找

查找与排序查找和排序是最基本的算法。在很多脚本中都会用到查找和排序,在前边的文章中,多次使用Python的函数查找字符串中的子字符串。尽管Python提供了用户查找和排序的函数能够满足绝大多数需求,但还是有必要了解最基本的查找和排序算法。查找基本的查找方法有顺序查找、二分查找和分块查找。其中,顺序查找是最简单的查找方法,就是按数据排列的顺序依次查找,直到找到所查找的数据为止。二分查找是首先对要进行查找的数据进行排序,有按大小顺序排好的9个数字,如下图如果要查找数字5,首先与中间值10进行比较,5小于...

Python 入门基础知识 - 数据结构与算法 - 图

图图也是非线性的数据结构,是由顶点和边组成的。如果图中的顶点是有序的,那么图是有方向的,称之为有向图,如下图否则,图是无方向的,称之为无向图。在图中,由顶点组成的序列称为路径。图和树相比,少了树明显的层次结构。在Python中可以采用字典的方式来创建图,图中的每个元素是字典中的键,该元素所指向的图中其他元素则组成键的值。同树一样,对于图来说也可以对其进行遍历。除了遍历外,可以在图中搜索所有的从一个顶点到另一个定点的路径。图中的顶点可以看做是城市,路径可以看做是城市到城市之间的公路。因此,通过搜索所有...

Python 入门基础知识 - 数据结构与算法 - 二叉树遍历

二叉树遍历按照先左后右,树的遍历方法有3种:先序遍历、中序遍历、后序遍历。其中,先序遍历的次序是:如果二叉树不为空,则访问根节点,然后访问左子树,最后访问右子树;否则,程序退出。中序遍历的次序是:如果二叉树不为空,则先访问左子树,然后范文根节点,最后访问右子树;否则,程序退出。后序遍历的次序依次是:如果二叉树不为空,则先访问左子树,然后访问右子树,最后访问根节点。代码实例演示如下# _*_ coding: utf-8 -*- # version 2.7.13 class BTree: #...

Python 入门基础知识 - 数据结构与算法 - 二叉树

二叉树二叉树是一类比较特殊的数,在二叉树中每个节点最多只有两个儿子,分为左和右,如下图相对于树而言,二叉树的构建和使用都要简单的多,而且任何一棵树,都可以通过变换转换成一颗二叉树。在Python中,二叉树的构建和树一样,可以使用列表或者类的方式。由于二叉树中的节点具有确定的儿子数,因此,使用类的方式要更为简便。代理实例演示如下# _*_ coding: utf-8 -*- # version 2.7.13 class BTree: # 二叉树节点 def __init__(self,...

Python 入门基础知识 - 数据结构与算法 - 树

树和图树和前几篇文章说的数据结构不同,树不是线性的。在处理较多数据的时候,使用线性结构较慢,而使用树结构则可以提高处理速度。不过树的构建相对于线性的表、堆栈和队列等较为复杂。树树是一种非线性的数据结构,如下图之所以称为树,是因为其形状像一颗倒置的大树。每颗树都有一个跟节点,如上图所示,Root为根节点。A、B、C为Root的儿子,Root为A、B、C的父亲,A、B、C为兄弟。同样A为D、E的父亲,D、E为A的儿子,D、E为兄弟。D、E为Root的孙子,Root为D、E的祖父。在树中,如果一个元素没有...

Python 入门基础知识 - 数据结构与算法 - 队列

队列队列和栈类似,如下图但不同的是,队列的出队操作是队首元素进行的删除操作,因而对于队列而言,先入队的元素将先出队。因此队的特性可以称为先进先出(FIFO)。和堆栈类似,在Python中同样可以使用列表来构建一个队列,并完成对队列的操作。如下实例# _*_ coding: utf-8 -*- # version 2.7.13 class TestQueue: def __init__(self, size=20): # 创建队列 self.queue = [] # 队列 self.size =...

Python 入门基础知识 - 数据结构与算法 - 栈

栈栈可以看做插入和删除在同一个位置上进行的表,一般是栈顶。栈的基本操作是进栈和出栈,栈可以看作是一个容器。如下图,先入栈的在容器底部,后入栈的在容器顶部。在出栈的时候,后入栈的先出,而先入栈的后出,因此栈有一个特性叫做后进先出在Python中,仍然可以使用列表来存储堆栈数据。通过创建堆栈类,来实现对堆栈进行操作的方法。如,进栈PUSH方法、出栈POP方法,编写检查栈是都为满栈,或者是否为空栈的方法等。如下示例代码# _*_ coding: utf-8 -*- # version 2.7.13...

Python 入门基础知识 - 数据结构与算法 - 表

数据结构与算法数据结构用来描述一种或多种数据元素之间的特定关系。算法是程序设计中对数据操作的描述。数据结果和算法组成了程序。对于简单的任务,只要使用编程语言提供的基本数据类型就足够了。而对于较复杂的任务,就需要使用基本的数据类型构造更加复杂的数据结构。表、栈和队列表、栈和队列都是基本的线性数据结构。由于Python设计良好的数据结构,其列表可以当做表来使用。而且列表的某些特性跟链表相似,在Python中表的实现非常简单。对于栈和队列,则可以自己在脚本中构建。表表示最基本的数据结构,在Python中可...