[算法笔记]用递归和迭代的思想分别实现插入排序和选择排序
python algorithms思路
插入排序(insert sort)
先归纳性的假设前 n-1 个元素已经完成排序了,现在要将第 n 个元素向前插入到正确的位置上。这种方式称之为插入排序法
选择排序(selection sort)
Read more...先找到整个序列中最大的元素,并将其向后放在 n(待排序的序列末尾)的位置上,然后继续递归排序剩下的元素。这种方式称之为选择排序法
先归纳性的假设前 n-1 个元素已经完成排序了,现在要将第 n 个元素向前插入到正确的位置上。这种方式称之为插入排序法
Read more...先找到整个序列中最大的元素,并将其向后放在 n(待排序的序列末尾)的位置上,然后继续递归排序剩下的元素。这种方式称之为选择排序法
侏儒排序是由 Hamid Sarbazi-Azad 在 2000 年提出的,也叫愚人排序法(Stupid sort)。这种排序算法一种简单的复杂度为平方级
的排序算法,一般实际生产中不会用到。
VMX-Manager 是一个基于 Django 框架开发的一款 CMDB 管理系统,目前处于 beta 版本,功能主要包含: 管理系统管理的客户主机列表, 动态显示客户机状态信息,远程指令操作指定客户机以及主机与客户机之间的文件传输。
Read more...昨天在Hackerrank上面练习 Python 题目的时候,题目要求从终端输入命令和参数,然后脚本获取到以后执行相应的操作(查看原题),作为初级程序员,我第一思路想到的解法就是枚举(因为题目上面限制了就 3 条命令)。通过if ... elif...elif...
的分支语句就解决了。Hackerrank 有一个好处就是,每一个题目都有一个讨论区,在讨论区中往往会有超出本人能力范围的巧妙高级解法发表在里面。有个大牛在讨论区发表了自己的解法,其中就用到了 getattr 这个内建函数,这样代码的扩展性就极强了,不再局限于本题目的三条指令。下面就记录一下这个有趣的函数。
Read more...
SaltStack 是一个服务器基础架构集中化管理平台,具备配置管理、远程执行、监控等功能,。SaltStack 基于 Python 语言实现,结合轻量级消息队列(ZeroMQ)与 python 第三方模块(Pyzmq、PyCrypto、Pyjinjia2、python-msgpack 和 PyYAML 等)构建。
Read more...Read more...Cookie(复数形态 Cookies),中文名称为“小型文本文件”或“小甜饼”[1],指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。
今天是六月一号,国际儿童节,首先祝生活中的每一个宝宝(只要你觉得自己是宝宝,那你就是)Happy Children’s Day!!!
OK,言归正传,昨天开始学习 Django 开发,个人认为,作为主流趋势,我倾向于用 pyhton3.x 开发,因为 web 开发有别与其他,对于实时响应要求相对较高,python3 可以更好的优化。在刚刚结束的 Pycon2017 上,来自 Instagram 的 Lisa Guo 和 Hui Ding(两位华裔)分别介绍了Instagram 为何选择 py3 以及整个网站迁移 py3 的过程。虽然还不是很具体了解其中的差别,但一个体量不小的公司做出了向 python3 迁移的举动,一定说明 python3 在 web 开发上有肯定的优势。
Read more...Python 提供了**__future__**模块,把下一个新版本的特性导入到当前版本,于是我们就可以在当前版本中测试一些新版本的特性
在 python2.x 的环境是使用下面语句,则第二句语法检查通过,第三句语法检查失败
from __future__ import print_function
print('good') #可以通过执行
print 'bad' #语法错误