1.冒泡排序1.1算法思想冒泡排序是一种简单的排序算法。通过重复地遍历要排序的数列,一次比较两个元素,从最开始的一对到最后的一对(相当于一个长度为2的滑动窗口),如果它们的顺序错误(看从小到达排列还是从大到小排列)就把它们交换过来。如果是升序排列的话,每次遍历都会把最大值交换到最右边。然后重复这个过程,直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的头部,就像冒泡一样。这个算法不需要额外的空间,
系统 2019-09-27 17:49:46 2009
image前不久,我写了一篇文章回顾Python中print的发展历史,提到了两条发展线索:明线:早期的print语句带有C和Shell的影子,是个应用程序级的statement,在最初十几年里,经历过PEP-214和PEP-259的改进;再到2009年的大版本3.0,由语句改成了print()函数,还在3.3版本,做过一次功能增强,最终上升成为一等的内置函数。暗线:介绍了print的竞争对手们,像传统的日志模块logging、调试模块pdb、主流IDE的
系统 2019-09-27 17:48:26 2009
Python将纳入高考内容、小学生教材开始接触Python、Python列入全国计算机等级考试……全民学Python的话题铺天盖地,中国的Python学习者是全球第一,人才如此泛滥,甚至以后孩子都会,学习它还能体现自身高价值?30年前学英语的人凤毛麟角,但是现在,当英语成为了国际通用语言,学英语的人地位下降了吗?仍然有大把人才靠英语的才能,过上令人羡慕的生活。所以,不论竞争者多少,建立自己强有力的竞争力才是关键。现在学Python的人越多,正代表着它成为编
系统 2019-09-27 17:48:17 2009
接触了Python这么多时间后,感触良多。每一次学习都是不一样的体验,Python课也是一个很不一样的上课体验。这样的课程和其他的课程完全两样,让我们一改对传统课程的认知,由于机房的环境,自带电脑的我们也会更快进入编程环境中。如果说以往的上课让我们觉得枯燥,这样上课的方式能让学生更快地进入状态。博客园的教学方式也是十分的新颖,电子作业的提交、网上作业的发布,使得学习生活借助了互联网的便利。尽管作业中的代码是对所有人开放的,但开源的好处可想而知。每个初学者都
系统 2019-09-27 17:47:04 2009
各国家用户消费分布importnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltdata={'China':[1000,1200,1300,1400,1500,1600,1700,1800,1900,2500],'America':[1200,1300,1400,1500,1600,1700,1800,1900,2000,2100],'Britain':[1000,1200,1300,1400,150
系统 2019-09-27 17:46:20 2009
pymysql模块的使用一、pymysql的下载和使用(1)pymysql模块的下载pip3installpymysql(2)pymysql的使用#实现:使用Python实现用户登录,如果用户存在则登录成功(假设该用户已在数据库中)importpymysqluser=input('请输入用户名:')pwd=input('请输入密码:')#1.连接conn=pymysql.connect(host='127.0.0.1',port=3306,user='ro
系统 2019-09-27 17:46:13 2009
字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值key=>value对用冒号:分割,每个键值对之间用逗号,分割,整个字典包括在花括号{}中,格式如下所示:d={key1:value1,key2:value2}键一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。一个简单的实例:dict={'WJ':'female','CT':'male'}这里主要说明一键一值和一键
系统 2019-09-27 17:46:12 2009
一:dict和set是python里面两种常用的数据结构,其底层是用哈希表实现的,类比java里面的HashSet和HashMap。dict和set的查询等操作的时间复杂度一般为O(1),远远好于一般数组的O(n)。之所以会这样,是因为dict和set维护这一张哈希表,通过哈希函数,可以快速定位到元素所在的位置。老版本的python的哈希表数据结构:--+-------------------------------+|哈希值(hash)键(key)值(v
系统 2019-09-27 17:45:28 2009
Python是一种面向对象的语言,但它不像C++一样把标准类都封装到库中,而是进行了进一步的封装,语言本身就集成一些类和函数,比如print,list,dictetc.给编程带来很大的便捷Python使用#进行单行注释,使用'''或"""进行多行注释数值计算>>>print"Onehourhas",60*60,"seconds"Onehourhas3600seconds>>>result=12#同一行代码利用空格分段使格式更清晰>>>printresult
系统 2019-09-27 17:37:58 2009
这里存在的一个问题就是历史之间不是互相联系的。正是由于这种问题的存在,所以很难保证以往的经验教训能够在几十年内都适用,尤其是对于那些和今天看起来很不一样的工作。一种变通的方法就是和各种有趣的现代项目作比较,虽然这并不拥有历史工程的庄重,但是它能够带来许多亲身的体验和心得。通常情况下,第一手的材料能够为人们提供足够的信息,从而将不同的想法联系起来。举例来说,一个web开发者会认为在历史上没有任何其它事情和他的工作类似。他之所以有这样的想法是因为web开发需要
系统 2019-08-29 23:53:08 2009