自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 六. 语句与语法:函数 + 列表生成式

函数 在Python中,定义一个函数要使用 def 语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用 return 语句返回。 如果没有return语句,函数执行完毕后也会返回结果,只是结果为 None。 return None可以简写为return。 ...

2018-12-14 16:00:39 100 2

原创 五. 语句与语法:语句

输入输出 s = input() 接收输入,接收为str型 input(‘提示’) 先输出提示信息 print(‘=’ * 20) 输出20次 = print(n,b,v,sep=’ - ’) 用-分隔n,b,v并输出 print(1, 2, 3, 4, sep=’\n’, end=’ end’)...

2018-12-14 15:57:12 97 0

原创 四. 数据类型:其它类型 + 文件

空对象 None 布尔 bool:True、False True本质为 1(等且只等于),False本质为0(等且只等于)。 True + 4 -> 5 False – 3 -> -3 注意: bool(3) -> True bool(-3) -&...

2018-12-14 15:52:45 80 0

原创 三. 数据类型:集合类型 + 映射类型

集合类型 set 持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像。 set存储的元素和dict的key类似,必须是不变对象 借助list创建set,重复元素会被合并。 s = set([1,2,34,1]) ->...

2018-12-14 15:49:23 458 0

原创 二. 数据类型:序列类型

分为可变和不可变序列。 序列通用操作(以列表为例) 生成序列 list(‘abcd’) -> [‘a’,’b’,’c’,’d’] list(range(5)) -> [0,1,2,3,4] 判断元素是否包含 a = [1,2,3,4,’a’,’b’] 1 in a -&...

2018-12-14 15:45:12 312 0

原创 一. 数据类型:基本数据类型

第一个 Python 程序 解释器解释运行,源代码编译为pyc字节码,字节码会被缓存,提供下次运行速度,根据时间戳和版本判断是否需要重新编译。在PVM虚拟机中运行。 Source(py) -> Byte code(pyc) -> Runtime(PVM...

2018-12-14 15:31:11 79 0

原创 排序:六. 堆排序(利用堆结构(二叉完全树)的弹出/下沉操作排序)

平均情况、最好情况和最坏情况的时间复杂度都为O(nlog2n),即线性对数复杂度,不稳定的排序算法。 堆结构在 数据结构:二叉完全树(堆) 一文中进行了分析,接下来用代码来实现其几个关键操作:弹出、插入、取顶、上浮、下沉 堆操作实现 这里的实现以小根堆为例: 堆的基本操作接口定义: 弹出方法 ...

2018-12-14 11:05:14 250 0

转载 数据结构:二叉完全树(堆)

参考文章 堆常用来实现优先队列。 用数组保存数据,而不是链表。 在队列中,操作系统调度程序反复提取队列中第一个作业并运行,因为实际情况中某些时间较短的任务将等待很长时间才能结束,或者某些不短小,但具有重要性的作业,同样应当具有优先权。堆即为解决此类问题设计的一种数据结构。 堆的实现通过构造二叉堆(...

2018-12-14 10:54:56 100 0

原创 排序:四. 归并排序(合并两个已经排好序的数组)

是创建在归并操作上的一种有效的排序算法。 平均、最好和最坏时间复杂度都为O(nlog2n)线性对数。是稳定的。 该算法是采用分治法(Divide and Conquer)的一个非常典型的应用,且各层分治递归可以同时进行。 归并操作(merge) 也叫归并算法,指的是将两个已经排序的序列合并成一个序...

2018-12-13 09:03:29 2133 0

原创 排序:三. 插入排序(将元素比较插入到前面的位置)

参考文章 时间复杂度O(n2),最好情况O(n),最坏情况O(n2),稳定。(同冒泡) 是一种简单直观的排序算法。适用于量级小于千,或者若已知输入元素大致上按照顺序排列。 插入排序不适合对于数据量比较大的排序应用。 工作原理:通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相...

2018-12-13 08:58:58 147 0

原创 排序:二. 直接选择排序(选择剩下的元素里最大(小)放到最后(前))

时间复杂度O(n2),最好情况O(n2),最坏情况O(n2),不稳定。 选择排序(Selection sort)是一种简单直观的排序算法。元素交换次数少,比较占多数。 工作原理如下 首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置 然后,再从剩余未排序元素中继续寻找最小(大)元素,然...

2018-12-13 08:54:55 318 0

原创 排序:一. 冒泡排序 (前往后所有未排序的元素相邻比较)

系列文章共实现了六种排序算法: 冒泡排序 直接选择排序 插入排序 归并排序 快速排序 堆排序 定义了 Sortable 接口,每种排序方法实现该接口,在 sort 方法中实现排序。 public interface Sortable<T> { /** ...

2018-12-13 08:51:25 311 0

原创 使用 zebra 对数据库表进行水平拆分

zebra 是美团点评开发的数据库访问层中间件,代码维护在 GitHub:Meituan-Dianping/Zebra Zebra是一个基于JDBC API协议上开发出的高可用、高性能的数据库访问层解决方案,是美团点评内部使用的数据库访问层中间件。具有以下的功能点: 配置集中管理,动态刷新 支...

2018-12-07 11:02:08 979 0

提示
确定要删除当前文章?
取消 删除