python
Rlyslata
python,java,ts,react
展开
-
Python:数据分析三剑客之Numpy
Numpy: numpy(numeric python)是Python的开源数字扩展,定义了数值数组和矩阵类型,以及基本运算的语言扩展,可用于矩阵数据、矢量处理等。pip安装: pip install numpynumpy使用: 1.创建数组 创建数组有4种方式:array,arange,linspace,logspace *** array...原创 2020-02-05 21:55:22 · 1162 阅读 · 0 评论 -
Python:快速排序与归并排序
快速排序和归并排序及其区别 首先在预期情况下的快速排序和归并排序时间复杂度都是O(NlogN), 在空间复杂度上,没使用临时栈的快速排序在空间上优于归并排序。其次,在稳定性上来说,快速排序是不稳定的排序,归并排序与堆排序一样是稳定的排序,即排序后,比较值相同元素相对位置不变。如会议安排,通过比较会议优先级进行排序,若存在两个优先级相同的会议,但输入数据中前一个会议是下午开始,后一个是明...原创 2020-02-04 21:50:05 · 571 阅读 · 0 评论 -
Python:堆排序
摘要:建立堆 维护堆 堆排序 堆的介绍及建立堆、维护堆与堆排序算法思想 """堆排序:堆排序,实际就是建立堆、维护堆或者说添加元素、删除堆顶的过程。 堆的定义与特性: 堆是一颗空树或有序的完全二叉树(完全二叉树即叶子节点只出现在最后两层,且除了最后一层,其它层都是节点数量都是2**h个),堆 (最大堆)的任意节点值都大于...原创 2020-02-03 22:45:53 · 87 阅读 · 0 评论 -
Python:插入排序、选择排序与冒泡排序
在此之前,上篇博客介绍了关于插入排序与选择排序的栈的实现方法,而本文排序算法是基于数组(Python 列表) 插入排序 """ 算法思想: n为序列长度 将待排序序列分成两段,一段是已排序序列(初始长度为0),另一段是未排序序列(初始长度为n), (若待排序序列不为空,已排序序列长度初始也可以是1,这样可以少执行一次)...原创 2020-02-03 22:27:36 · 119 阅读 · 0 评论 -
Python:栈和队列(基于链表)
Python栈的实现 栈是一种以后进先出的顺序对对象进行添加和删除的数据结构。因为它的后进先出特性,也被称作LIFO表或LIFO(last in first out)栈只允许在栈顶进行操作,栈类一般会定义Pop()、Push()等操作。python实现代码如下:class Stack(CircularLinkedList.LinkedList): def __init...原创 2020-02-02 20:12:53 · 266 阅读 · 0 评论 -
Python:稀疏数组与三角数组
稀疏数组 稀疏数组应用场景: 当数组size很大而空间利用率很低时,应使用稀疏数组来存储 下面的实现的稀疏数组0行0列都没用来存储数据,留做存储row_size等其他数据用,一个稀疏数组由多个行链表组成,一个行链表由多个节点构成Python 实现如下:# 节点类class ArrayEntry: def __init__(self, columnNu...原创 2020-02-01 21:42:18 · 387 阅读 · 1 评论 -
Python 链表与环路检测算法
Python 链表 python 链表可以实现如下:# 链表节点类class Node: def __init__(self, value, Next): self.value = value self.next = Next# 链表类class LinkedList(Node): # 初始化链表 def __in...原创 2020-01-31 22:08:50 · 625 阅读 · 0 评论 -
Python :No module named XXX
环境:JetBrains PyCharm Community Edition 2019.2.1 x64,python3.7 可能原因:当前文件夹(包)不是资源文件(source file) 解决办法:右键要导入模块文件所在目录,选择Marked Directory as,再选择sources Root ...原创 2020-01-22 22:06:35 · 156 阅读 · 0 评论