摘要: 1.平稳的时间序列 级数的平均值不应是时间的函数,而应是常数; 系列的方差不应该是时间的函数,该特性被称为同调; 第i项和第(i + m)项的协方差不应该是时间的函数。 除非时间序列稳定,否则将无法建立时间序列模型。在违反固定标准的情况下,首要条件是使时间序列平稳,然后尝试使用随机模型预测该时间序列 阅读全文
posted @ 2020-01-31 21:56 星涅爱别离 阅读(683) 评论(0) 推荐(0) 编辑
摘要: 对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。通常,这样的线性序列称为满足拓扑次序(Topological Order)的序列,简称拓扑序 阅读全文
posted @ 2020-01-31 14:04 星涅爱别离 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 希尔排序,也称递减增量排序算法,是插入排序的一种更高效的改进版本。但希尔排序是非稳定排序算法。 希尔排序的基本思想是:先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序,待整个序列中的记录"基本有序"时,再对全体记录进行依次直接插入排序。 def shellSort(arr): n = 阅读全文
posted @ 2020-01-31 14:01 星涅爱别离 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 计数排序的核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。作为一种线性时间复杂度的排序,计数排序要求输入的数据必须是有确定范围的整数。 def countSort(arr): output = [0 for i in range(256)] count = [0 for i in rang 阅读全文
posted @ 2020-01-31 13:58 星涅爱别离 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。堆排序可以说是一种利用堆的概念来排序的选择排序。 def heapify(arr, n, i): largest = i l 阅读全文
posted @ 2020-01-31 13:51 星涅爱别离 阅读(113) 评论(0) 推荐(0) 编辑
摘要: #!/usr/bin/python3 # -*- coding: utf-8 -*- import itertools class cartesian(object): def __init__(self): self._data_list=[] def add_data(self,data=[]) 阅读全文
posted @ 2020-01-31 13:48 星涅爱别离 阅读(452) 评论(0) 推荐(0) 编辑
摘要: 归并排序(英语:Merge sort,或mergesort),是创建在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 分治法: 分割:递归地把当前序列平均分割成两半。 集成:在保持元素顺序的同时将上一步得到的子序列集成到一起(归并)。 阅读全文
posted @ 2020-01-31 13:46 星涅爱别离 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。 def bu 阅读全文
posted @ 2020-01-31 13:41 星涅爱别离 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 实例 import sys A = [6 阅读全文
posted @ 2020-01-31 13:37 星涅爱别离 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 快速排序使用分治法(Divide and conquer)策略来把一个序列(list)分为较小和较大的2个子序列,然后递归地排序两个子序列。 步骤为: 挑选基准值:从数列中挑出一个元素,称为"基准"(pivot); 分割:重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准 阅读全文
posted @ 2020-01-31 13:35 星涅爱别离 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。 def insertionSort(arr): for i in range(1, len(arr)): key = arr[i] 阅读全文
posted @ 2020-01-31 13:18 星涅爱别离 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 线性查找指按一定的顺序检查数组中每一个元素,直到找到所要寻找的特定值为止。 def search(arr, n, x): for i in range (0, n): if (arr[i] == x): return i; return -1; # 在数组 arr 中查找字符 D arr = [ ' 阅读全文
posted @ 2020-01-31 13:17 星涅爱别离 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 二分搜索是一种在有序数组中查找某一特定元素的搜索算法。搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较。如果在某一步骤数组为空,则代表找不到。这种搜索算法每一 阅读全文
posted @ 2020-01-31 13:08 星涅爱别离 阅读(171) 评论(0) 推荐(0) 编辑
摘要: def myfont(): name = input("输入你的名字:(only English words) \t") length = len(name) for x in range(0, length): c = name[x] c = c.upper() if (c == "A"): pr 阅读全文
posted @ 2020-01-31 12:37 星涅爱别离 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 如何主动产生warning错误: import warnings def fxn(): warnings.warn("deprecated", DeprecationWarning) with warnings.catch_warnings(): warnings.simplefilter("ign 阅读全文
posted @ 2020-01-31 12:19 星涅爱别离 阅读(3983) 评论(0) 推荐(0) 编辑
摘要: 异常处理 捕捉异常可以使用try/except语句。 try/except语句用来检测try语句块中的错误,从而让except语句捕获异常信息并处理。 如果你不想在异常发生时结束你的程序,只需在try里捕获它。 语法: 以下为简单的try....except...else的语法: try: <语句> 阅读全文
posted @ 2020-01-31 12:09 星涅爱别离 阅读(180) 评论(0) 推荐(0) 编辑