搜索到与相关的文章
Python

数据结构-二叉树(1)以及前序、中序、后序遍历(python实现)

上篇文章我们介绍了树的概念,今天我们来介绍一种特殊的树——二叉树,二叉树的应用很广,有很多特性。今天我们一一来为大家介绍。二叉树顾名思义,二叉树就是只有两个节点的树,两个节点分别为左节点和右节点,特别强调,即使只有一个子节点也要区分它是左节点还是右节点。常见的二叉树有一般二叉树、完全二叉树、满二叉树、线索二叉树、霍夫曼树、二叉排序树、平衡二叉树、红黑树、B树这么多种类。我们这篇文章中简单介绍一般二叉树、完全二叉树和满二叉树。一般二叉树很简单,只要满足子节点

系统 2019-09-27 17:47:38 2263

Python

Python rstrip函数踩坑记录

问题背景从许多中文的参考文献上,rstrip()函数的功能被简单描述为:删除字符串末尾的指定字符(默认为空格),我的理解是,直接去掉末尾指定的字符序列,如我传入的是d,则会去掉末尾的字符d(如果存在),如果传入了字符ad,则去掉末尾的字符ad(如果存在),直到我们开发的服务遇到了一个非常奇怪的bug之后,下面是奇怪问题的复现过程:>>>s='hello_world'>>>s.rstrip('d')#去除末尾的字符d'hello_worl'>>>>>>s.r

系统 2019-09-27 17:46:47 2263

Python

跟老齐学Python之画圈还不简单吗?

在python中,循环有一个语句:for语句。简单的for循环例子>>>hello="world">>>foriinhello:...printi...world上面这个for循环是怎么工作的呢?hello这个变量引用的是"world"这个str类型的数据变量i通过hello找到它所引用的"world",然后从第一字符开始,依次获得该字符的引用。当i="w"的时候,执行printi,打印出了字母w,结束之后循环第二次,让i="e",然后执行printi,打

系统 2019-09-27 17:38:21 2263

Python

给Python中的MySQLdb模块添加超时功能的教程

使用Python操作MySQL数据库的时候常使用MySQLdb这个模块。今天在开发的过程发现MySQLdb.connect有些参数没法设置。通过这个页面我们可以看到在connect的时候,可以设置的option和client_flags和MySQLcapi相比差不少。一个很重要的参数MYSQL_OPT_READ_TIMEOUT没法设置,这个参数如果不设置,极致状况MySQL处于hang住,自动切换IP漂移,客户端无法重连到新MySQL。给MySQLdb加O

系统 2019-09-27 17:38:16 2263

Python

打包发布Python模块的方法详解

前言昨天把自己的VASP文件处理库进行了打包并上传到PyPI,现在可以直接通过pip和easy_install来安装VASPy啦(同时欢迎使用VASP做计算化学的童鞋们加星和参与进来),VASPy的GotHub地址:https://github.com/PytLab/VASPyVASPy的PyPI地址:https://pypi.python.org/pypi/vaspy/由于自己的记性真是不咋地,怕时间久了就忘了,于是在这里趁热打铁以自己的VASPy程序为

系统 2019-09-27 17:38:04 2263

Python

在Python的Django框架中创建和使用模版

如何使用模板系统让我们深入研究模板系统,你将会明白它是如何工作的。但我们暂不打算将它与先前创建的视图结合在一起,因为我们现在的目的是了解它是如何独立工作的。。(换言之,通常你会将模板和视图一起使用,但是我们只是想突出模板系统是一个Python库,你可以在任何地方使用它,而不仅仅是在Django视图中。)在Python代码中使用Django模板的最基本方式如下:可以用原始的模板代码字符串创建一个Template对象,Django同样支持用指定模板文件路径的方

系统 2019-09-27 17:37:55 2263

编程技术

js 中的算术运算

js中的算术运算Math.pow(2,53)//=>9007199254740992:2的53次幂Math.round(.6)//=>1.0:四舍五入Math.ceil(.6)//=>1.0:向上求整Math.floor(.6)//=>0.0:向下求整Math.abs(-5)//=>5:求绝对值Math.max(x,y,z)//返回最大值Math.min(x,y,z)//返回最小值Math.random()//生成一个大于等于0小于1.0的伪随机数Math

系统 2019-08-29 23:08:42 2263

编程技术

ESBasic 可复用的.NET类库(06) -- 循环任务

1.缘起:假设我的订单处理系统有这样的需求:将一天24小时分为4个时段,凌晨2:15到8:30采用A类型的处理器处理接收到的订单,8:30到14:00采用B类型的处理器,14:00到20:00采用C类型的处理器,20:00到第二天凌晨2:15采用D类型的处理器。即我们的订单处理器需要在任一天的2:15、8:30、14:00、20:00这四个时刻发生切换,这就是一个循环切换器所要做的工作。我设计了ESBasic.Threading.Application.I

系统 2019-08-29 22:15:06 2263

编程技术

常见排序算法稳定性和复杂度分析

http://blogold.chinaunix.net/u3/94667/showart_2150464.html1.排序算法的稳定性分析:若待排序的序列中,存在多个具有相同关键字的记录,经过排序,这些记录的相对次序保持不变,则称该算法是稳定的;若经排序后,记录的相对次序发生了改变,则称该算法是不稳定的。(1)冒泡排序冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。所以,如果两个元素相等,我想你是不

系统 2019-08-12 09:29:33 2263

编程技术

eclipse 经典开发教程 插件安装

Eclipse是一个开源的、可扩展的集成开发环境,已经吸引了业界的很多注意力,而且Eclipse的支持者源源不断。Eclipse有着非常强大的功能,对于编码、调试、重构、单元测试等都提供了完美的实现。Eclipse可以与任何一种IDE匹敌,甚至比它们还要好。Eclipse有代码补足、代码模板的功能,以及对重构、Ant、CVS和JUnit的支持。除了这些基本功能之外,Eclipse的优点之一就是它的源代码是开放的,可扩展性很好,可以扩充很多插件,开源插件和商

系统 2019-08-12 09:29:27 2263