![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
文章平均质量分 72
-TOXNO-
这个作者很懒,什么都没留下…
展开
-
python实现二叉查找树的查找、插入、删除操作
本文用python3实现二叉查找树的查找、插入、删除操作。完整代码:https://github.com/toanoyx/BasicAlgorithm/tree/master/tree查找查找操作:先取根节点,如果它等于要查找的数那就返回。如果要查找的数比根节点的值小,就在左子树中递归查找;如果要查找的数比根节点的值大,那就在右子树中递归查找。 def search(sel...原创 2020-02-13 11:28:10 · 2271 阅读 · 0 评论 -
python实现二叉查找数的查找最小值、最大值操作
本文用python3实现二叉查找树的查找最小值、最大值的操作。查找最小值 def get_min(self): if self.root is None: return None node = self.root while node.left: node = node.left ...原创 2020-02-13 11:12:39 · 1484 阅读 · 0 评论 -
python实现二叉树的广度优先遍历(BFS)和深度优先遍历(DFS)
本文用python3实现二叉树的广度优先遍历(BFS)和深度优先遍历(DFS)。完整代码链接:https://github.com/toanoyx/BasicAlgorithm/tree/master/tree广度优先遍历广度遍历又叫层次遍历。用队列实现,依次将根,左子树,右子树存入队列,按照队列的先进先出规则来实现层次遍历。# 层次遍历(广度优先)def BFS(root):...原创 2020-02-12 11:59:23 · 4729 阅读 · 0 评论 -
python实现二叉树的前序、中序、后序遍历
本文用python3实现二叉树的前序、中序、后序遍历。from typing import TypeVar, Generic, Generator, OptionalT = TypeVar("T")class TreeNode(Generic[T]): def __init__(self, value: T): self.val = value ...原创 2020-02-12 11:32:07 · 442 阅读 · 0 评论 -
python实现跳表(Skip List)的查找、插入、删除操作
跳表(Skip List)是对链表改造后的动态数据结构,利用空间换时间的思想,建立多级索引来提高查找、插入、删除操作的效率。一层一层索引有点类似二分查找这种分而治之的思想。在跳表中查询一个数据的时间复杂度是O( log n ),空间复杂度是O( n )。跳表通过随机函数来维护平衡性,即索引大小与原始链表大小之间的平衡,不至于性能过度退化,有效平衡执行效率和内存消耗。通过随机函数,来决定...原创 2020-02-09 12:15:27 · 1698 阅读 · 0 评论 -
python pip安装第三方包 pip的安装与使用
本文记录了一些常见的pip使用方法。1 进入命令提示符快捷键【Wind】+【R】,搜索cmd,回车即可进入命令提示符界面。2 显示pip版本和路径pip --version3 升级pippip install -U pip4 显示帮助pip --help5 安装第三方包pip install SomePackagepython3 -m pip ins...原创 2020-02-05 19:37:31 · 271 阅读 · 0 评论 -
python 解决pycharm第三方库安装后import报错【ModuleNotFoundError:No module named'XXX'】
本文解决pycharm第三方库安装后依旧import报错【ModuleNotFoundError:No module named'XXX'】的问题。解决方案:1)进入【File】→【Settings】→【Project】→【Project Interpreter】。2)点击设置图标,进入【Show All】。3)点击右侧加号图标,进入【Virtualenv Enviroment】,...原创 2020-02-05 19:21:26 · 2428 阅读 · 0 评论 -
python实现查找数组中第k大的数
本文用python3实现查找数组中第k大的数。采用快速排序的方法实现。def findKth(s, k): return findKth_c(s, 0, len(s) - 1, k)def findKth_c(s, low, high, k): m = partition(s, low, high) if m == len(s) - k: re...原创 2020-02-03 14:44:35 · 3661 阅读 · 0 评论 -
python实现二分查找的四种变体
本文用python3实现了二分查找的四种变体。(一)查找第一个值等于给定值的元素(二)查找最后一个值等于给定值的元素(三)查找第一个大于等于给定值的元素(四)查找最后一个小于等于给定值的元素python3:(一)查找第一个值等于给定值的元素def bSearchV1(s, k): low = 0 high = len(s) - 1 whi...原创 2020-02-03 14:13:17 · 343 阅读 · 0 评论 -
python实现基于二分查找的求整数平方根
本文用python3实现基于二分查找的求整数平方根。python3:def binarySearchSqrt(n): low = 1 high = 100 while low <= high: mid = low + (high - low) // 2 if mid ** 2 == n: return ...原创 2020-02-03 12:59:07 · 1148 阅读 · 0 评论 -
python实现二分查找(递归、非递归)
本文用python3实现了二分查找算法,分别使用递归方法和非递归方法。(一)递归实现def binarySearch(s, k): return binarySearch_c(s, 0, len(s) - 1, k)def binarySearch_c(s, low, high, k): if low > high: return -1 ...原创 2020-02-02 17:18:35 · 584 阅读 · 0 评论 -
python实现各种排序算法(冒泡,插入,选择,快速,归并,计数)
本文用python3实现了各种排序算法,包括冒泡排序、插入排序、选择排序、快速排序、归并排序、计数排序。(一)冒泡排序def bubbleSort(s): for i in range(len(s)): for j in range(i+1, len(s)): if s[i] > s[j]: s[i...原创 2020-02-02 15:38:04 · 279 阅读 · 0 评论 -
python中的collections.deque()用法
deque是双边队列,具有队列和栈的性质。相当于可以在两端操作的list。以下是deque的常用方法:import collectionsd = collections.deque([])d.append('a') # 在最右边添加一个元素d.appendleft('b') # 在最左边添加一个元素d.extend(['c','d']) # 在最右边添加所有元素d.extend...原创 2020-01-06 22:40:06 · 2978 阅读 · 0 评论 -
python中reshape(-1, 1)和reshape(1, -1)
reshape函数是在不改变数组的数据情况下,改变其格式、参数、返回值。reshape(m, -1) 改变维度为m行、1列reshape(-1, m) 改变维度为1列、m行原创 2020-01-06 15:55:33 · 845 阅读 · 1 评论 -
python下 import Matplotlib.pyplot as plt 的使用
在学习机器学习的相关内容时,接触到了Matplotlib,于是总结了一些常见的使用方法。import matplotlib.pyplot as plt1 plt.ion() 和 plt.ioff()在Matplotlib中,图的默认显示为阻塞模式(block),即显示图片后,需要关闭图片窗口,程序才可继续执行,即一次只能显示一张图片。若想要动态显示图像,就要用到交互模式(intera...原创 2020-01-02 23:04:54 · 35371 阅读 · 0 评论 -
python标准库中的bin()函数
bin(x)将一个整数x转换为二进制的字符串表示。注意转换后的是一个字符串。开头的“0b”表示是二进制。bin(1)='0b1'bin(2)='0b10'bin(3)='0b11'bin(4)='0b100'bin(5)='0b101'...原创 2019-12-24 15:57:35 · 1500 阅读 · 0 评论 -
python——学习笔记(三)
python语言基础1.常量和变量 常量是内存中用于保存固定值的单元,在程序中常量的值不能发生改变。python常量包括数字、字符串、布尔值和空值等。python没有命名常量,但可以定义一个命名常量。 python中数的类型主要分为整数型(int)、长整数型(long)、浮点数型(float)、布尔型(bool)、复数型(complex)。 ...原创 2018-09-17 11:30:48 · 252 阅读 · 0 评论 -
python——学习笔记(二)
python概述1.基本语法 (1)python程序由python语句组成,通常一行编写一个语句。可以没有结束符,但多语句一行需要加分号表示结束。 print('Hello Wrold!');print('I am python!') (2)缩进不是任意的,平级的语句行(代码块)的缩进必须相同。2.python自带文本编辑器IDLE的使用方法 pytho...原创 2018-09-17 09:21:27 · 128 阅读 · 0 评论 -
第一个python程序 Hello World
哈哈哈,Hello World开启了我的python学习之路!原创 2018-09-09 17:18:17 · 113 阅读 · 0 评论 -
python——学习笔记(一)
1.1 注释 ●单行注释以 # 开头,多行注释可以用多个#号,还有'''和"""1.2 行与缩进 ●使用缩进来表示代码块,不需要使用大括号{} 。 ●缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。1.3 多行语句 ●通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠(\)来实现多行语句。 ●在 []...原创 2018-09-09 17:14:04 · 220 阅读 · 0 评论