好好学习,天天向上

输入:n个数的一个序列 (A[1..n]) 输出:输入序列的一个排序,满足b1≤b2≤...≤bn。 思想 分治法: 1. 分解:数组A[p..r]被划分为两个(可能为空)子数组A[p..q-1]和A[q+1..r],使得A[p..q-1]中的每一个元素都小于等于A[q],而A[q]也小于等于A[q+1..r]中的每个元素。其中,计算下标q也是划分过程的一部分(PARTITION(A, p, r)) 2. 解决:通过递归调用快速排序,对子数组A[p..q-1]和A[q+1..r]进行排序 3. 合并:因为子数组都是原址排序,所以不需要合
阅读全文 »

输入:n个数的一个序列 (A[1..n]) 输出:输入序列的一个排序,满足b1≤b2≤...≤bn。 思想 参考:Wiki百科:堆排序 ## 堆 表示堆的数组A包括两个属性:A.length给出数组元素的个数,A.heap-size表示有多少个堆元素存储在该数组中。也就是说,虽然A[1..A.length]可能都存有数据,但只有A[1..A.heap-size]中存放的是堆的有效元素。这里, 0 ≤ A.heap-size ≤ A.length。 (二叉)堆数组A是一个近似的完全二叉树,树的根结点是A[1],这样,给定一个结点的下标i
阅读全文 »

原文:8.17. copy — Shallow and deep copy operations Python中的赋值语句并不拷贝对象,而是创建目标和对象之间的绑定关系。对于那些可变的或包含可变对象的集合来说,有时候需要进行拷贝,以使得一个对象的改变并不会改变另一个对象。这个模块提供常规的浅拷贝操作和深拷贝操作(解释如下)。 接口概述: copy.copy(x) 返回x的一个浅拷贝 copy.deepcopy(x) 返回x的一个深拷贝 exception copy.error 模块的特定错误 浅拷贝和深拷贝之间的不同仅在于复合对象(即包含其他对象的对象,例如列表或者类实例): * 一个浅
阅读全文 »

有一件事,基本贯穿了我在华为的两年多。 当时刚到项目组不到一个月,负责产品版本管理的同事被通知到科特迪瓦出差,因此就把版本的事都交给了另一个同事。而本着每个角色都要有个backup的想法(这个想法其实是很不错的,可惜到后面慢慢的就没坚持下去了),LM把我们都叫过来问我们谁愿意当那个backup。在大家沉默不语的时候,我头脑一热,举起了手。后来的后来,每每提及此事,都感慨自己真是年轻呀~~ 好,那就当backup吧。反正主负责人在,也没我啥事。可惜没多久,主负责人也去出差了,接手的另一个同事也忙,事情就落在了我这个backup身上。 这里要提下版本流程。负责版本管理的人要在某个时间进行版本计划
阅读全文 »

原文:Comparing 7 Python data visualization tools Python的科学栈相当成熟。目前已经有许多用于各种各样目的的库,包括机器学习和数据分析。数据可视化是能够探索数据和交流结果的重要组成部分,但是在过去,稍微落后于其他工具,例如,R。 幸运的是,在过去的几年里,许多新的Python数据可视化库被创造出来以缩小差距。matplotlib已经成为主要的数据可视化库,但是,也有其他诸如vispy, bokeh, seaborn, pygal, folium和networkx的库,它们要么建立在matplotlib的基础上,要么具备matplotlib所不
阅读全文 »

UnicodeDecodeError错误是在使用Python的时候最常碰到的问题。谁让我们博大精深的中文不能用简简单单256个字符表示呢。 加之有很多错误犯了又犯。因此,整理此UnicodeDecodeError菜谱。(此文会不定时更新╮(╯▽╰)╭) * 解析网页返回值时使用例如resp.decode("utf-8")出现'utf8' codec can't decode byte 0x8b in position 1: 查看response header有Content-Type:application/x-javascript; charset=UTF-8。因此使用utf-8解码是没
阅读全文 »

从2013年8月,到2015年11月,在华为也待了两年有余。 大队培训完就被分到了华为的电信软件部门。虽然自己对通信并不感冒,但也傻傻的不会要求调岗,便从0开始接触运营商相关的东西。 所在的产品中文名可以叫做服务开通,顾名思义就是为用户订购产品的一个中间件,做协议转换。上与CRM(Customer Relationship Management)、CBS等进行交互,接受用户信息变更及订购关系变更请求,细分业务逻辑,下发命令到core network(例如HLR, VMS等)进行相关操作。 产品又分为PDU和SDU。PDU负责平台开发,SDU负责业务定制,在平台的基础上进行二次开发。我呢,属
阅读全文 »

原文:The Best Way to Learn Python Python变得比以往任何时候都受欢迎。从后端Web服务器,到前端游戏开发,Python被广泛应用于其间各方各面。Python是一门真正的通用语言,并迅速成为任何一个自重的程序员兵器谱上的一个必备工具。 但是,Python并不是因为流行而受欢迎的。而是因为它易学,如伪代码般易读及极度敏捷。然而,学习任何一个新语言都有可能成为一项艰巨的任务,而找到正确的方法以及向正确的人学习则可以事半功倍。这就是本指南能够做到的。这是是滴Python容易,有趣及值得学习的蓝图。 任务1:从基础开始 在写这篇文章的时候,有两个主流的Python
阅读全文 »