自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Nothing replaces hard work

  • 博客(14)
  • 资源 (10)
  • 收藏
  • 关注

原创 终结篇:Python进阶之路 #P013#

到这里,我们的课程就要结束了。如果读者能够读到这里,那一定是真爱。作为我们整个课程的压轴文章,笔者将为各位读者推荐最有价值的学习资料。大部分学习资料都与Python相关,除此之外,还有两本特别好的书要推荐给大家。1 Python语言自身相关的书籍Python是一门编程语言,使用范围非常广泛,因此,大家不要去追求精通Python程序语言自身,而应该将精力放在自己需要解决的实际问题上。其次,绝大多...

2019-12-24 20:39:19 261

原创 站在巨人肩上看世界:通过开源项目学Python #P012#

在这篇文章中,将会讨论著名开源项目对Python内置dict的几种扩展。这些扩展本身是出于特定目的而开发,应用范围不如Python内置的dict广泛。但是,由于这些扩展本身很“小”,所以它的应用范围也不仅限于特定的开源项目,我们完全可以将这些扩展拿过来应用到自己的项目之中。通过学习这些优秀开源项目的源码,不但可以开阔自己视野,还能达到提高Python编码水平的目的。本文将依次介绍以下几个对Py...

2019-12-24 20:30:34 179

原创 编程中易犯错误汇总:一个综合案例 #P011#

在上一篇文章中,我们学习了如何区分好的代码与坏的代码,如何写好代码。所谓光说不练假把式,在这篇文章中,我们就做一件事——一起来写代码。首先,我会先列出问题,然后要求读者自己写一份答案;然后,我会给出我写的代码;最后,我们还会以这个问题为例,讨论编程中常见的错误。1 问题描述在这个页面中,有一道Python相关的练习题,可以作为Python相关的进阶题目。题目的描述如下:Write a Py...

2019-12-24 20:29:00 325

原创 可读性与可扩展性:一个完美的函数 #P010#

在这一篇文章中,我们会在os.walk函数的基础上,封装一个查找文件的函数。如果读者是一位编程经验还不太丰富的工程师,相信可以从这篇文章中受到一些启发,并在以后的工作中,更加能够编写出扩展性强、可读性强、好维护的代码。1 使用os.walk遍历目录树为了避免读者不了解os.walk函数,从而无法理解这篇文章在就讲什么。因此,在正式介绍今天的主题之前,我们先来看一下os.walk函数的使用。o...

2019-12-24 20:27:35 471

原创 好代码与坏代码:代码整洁之道 #P009#

在这一篇文章中,我们来讨论一些更加形而上的知识,即什么是好代码、什么是坏代码,如何写出好代码。在本系列文章的第一篇中,笔者解释了什么是Pythonic,并且认为Pythonic是一些正确的废话,然后给读者推荐了《重构》和《代码整洁之道》。《重构》和《代码整洁之道》都是使用Java语言作为思想的载体,为了节省读者的时间,并且强调一些Python语言的特性,所以有了读者现在正在看的这篇文章。在这篇文...

2019-12-24 20:26:51 414

原创 Python语言高级特性:创建Python对象的方法 #P008#

在这篇文章中,将大开脑洞,讨论不同的Python对象“创建”的方法。通过比较不同的实现方法,将会揭露很多被大家忽略的Python语言高级知识。准确来说,本篇文章创建对象的方法并不是真正的“创建”,而是通过不同的方式获取到类对象,然后进行调用创建对象。但是,本篇文章的讨论对于绝大多数读者来说依然非常有意义,可以接触到很多比较隐蔽的Python知识。1 问题在这篇文章中,我们会用到下面这个名为Po...

2019-12-24 20:26:06 116

原创 Python语言高级特性:生成器 #P007#

在Python这门语言中,生成器毫无疑问是最有用的特性之一,与此同时,也是使用的最不广泛的Python特性之一。究其原因,主要是因为,在其他主流语言里面没有生成器的概念。正是由于生成器是一个“新”的东西,所以,它一方面没有引起广大工程师的重视,另一方面,也增加了工程师的学习成本,最终导致大家错过了Python中如此有用的一个特性。在这一节中,我们将深入浅出地介绍Python的生成器,以改变“如此有...

2019-12-24 20:25:21 194

原创 Python语言高级特性:装饰器 #P006#

在这一篇文章中,我们将会介绍Python语言中的装饰器。装饰器或许是Python中最复杂的知识点,也是很多人学习时遇到的难点。希望在这篇文章中,我能够以由浅入深的方式,带领大家彻底搞清楚装饰器,领悟装饰器的好处。1 准备知识Python 2.4 开始提供了装饰器(decorator),装饰器作为修改函数的一种便捷方式,为工程师编写程序提供了便利性和灵活性。适当使用装饰器,能够有效的提高代码的可...

2019-12-24 20:24:33 139

原创 Python语言高级特性:上下文管理器 #P005#

相信大家在编程的时候,经常会遇到这样的场景:先执行一些准备操作,然后执行自己的业务逻辑,等业务逻辑完成以后,再执行一些清理操作。例如,对文件操作,我们需要首先打开文件,然后处理文件内容,最后关闭文件。又如,当多线程程序需要访问临界资源的时候,线程首先需要获取互斥锁,当执行完成并准备退出临界区的时候,需要释放互斥锁。对于这些场景,Python中提供了上下文管理器(Context Manager),可...

2019-12-24 20:23:42 175

原创 牢记数据结构的时间复杂度 #P004#

虽然大多数情况下,Python程序都不会应用在计算密集型的场景。但是,作为一个合格的工程师,依然应该对Python内置数据类型的时间复杂度有一个基本的了解,才能够避免写出一些明显低效的代码。打个比方,我们都知道,在Python里面list是异构元素的集合,并且能够动态增长或收缩,可以通过索引和切片访问。那么,又有多少人知道,list是一个数组而不是一个链表呢。1 时间复杂度的重要性算法的时间复...

2019-12-24 20:22:25 181

原创 善于使用列表推导、集合推导与字典推导 #P003#

推导式是一个可以从现有数据序列构建另一个新的数据序列的结构体。Python共提供了三种推导式,在Python 2和 Python 3中都支持:列表(list)推导式字典(dict)推导式集合(set)推导式其中,最常用的是列表推导(list comprehension,又称列表解析式)。在这篇文章中,将用列表推导作为例子对Python的推导式进行系统性的介绍,然后再简单介绍字典推导与集...

2019-12-24 20:20:53 196

原创 合理使用数据结构 #P002#

有一位计算机科学家说过,程序等于算法加数据结构,笔者也深以为然。在这篇文章中,笔者将通过一个完整的例子,一步一步来演示如何使用正确的数据结构。并在文章最后,推荐读者了解和学习一些常见的数据结构,以便在工作中恰到好处的使用,减少重复的工作,提升代码质量和工作效率。1 合理使用数据结构在正式介绍今天的例子之前,我们来热个身,看两个小问题。读者可以通过这两个小问题,看看自己对常用的数据结构,是否了解...

2019-12-24 20:19:07 311

原创 怎样才能写出Pythonic的代码 #P001#

1 什么是Pythonic在Python语言里面,有一个专门的词用来形容代码写的好,那就是“Pythonic”。那么,何为Pythonic呢?相信不少Python工程师都知道,Python中有一个彩蛋,回答了什么是Pythonic。这个彩蛋,也就是所谓的Python之禅(The Zen of Python)。只需要在Python的交互模式下,导入this库,就可以看到Python之禅的详细内容...

2019-12-24 20:10:02 209

原创 为什么要学习Python高质量编程 #P000#

大家好,我是赖明星。现就职于腾讯,曾任网易资深工程师。有着多年的Python开发经验和一线互联网实战经验,擅长C、Python、Java、MySQL、Linux 等主流技术。国内知名的Python技术专家和Python技术的积极推广者,已出版图书《Python Linux 系统管理与自动化运维》。课程背景我是2009年开始接触Python语言的,见证了Python技术在国内从无人问津到火遍...

2019-03-20 19:47:23 239

模拟退火算法,遗传算法求解旅行商问题,附论文

高级算法课程的论文,使用模拟退火算法喝遗传算法求解旅行商问题,使用C++实现,有注释,有论文,详细的说明文档。

2012-09-02

Hopfield人工神经网络求解TSP问题(附论文)

人工神经网络求解旅行商问题,有完整的论文,论文里含有源代码,参考浙江大学出版社的《人工神经网络实用教程》。

2012-07-22

CSmtp控制台发送邮件

c++实现的可以在控制台发送邮件的程序,亲测可用,如果提示valid sock32 socket,那就用qq邮箱试一试,直接编译运行就可以了.

2012-05-13

从一亿个数里找出最大的一万个数

这是一篇论文,用了六个方法求解问题,引导读者思考。最后得出极好的解。

2012-05-12

Cracking The Coding InterView 笔试面试题

amazon.com最畅销的书籍,各大科技公司的笔试面试题,绝对不比编程之美差,不过是全英文的,Careercup出品。

2012-05-12

viEmu(vim for visual studio)

vim for visual studio 附使用说明。亲测vs2008,可以使用 对于vs2010不行,不要下载了。

2011-09-22

你必须知道的495个C语言问题

“本书是Summit以及C FAQ在线列表的许多参与者多年心血的结晶,是C语言界最为珍贵的财富之一。我向所有C语言程序员推荐本书。”   ——Francis Glassborow,著名C/C++专家,ACCU(C/C++用户协会)前主席   “本书清晰阐明了Kernighan与Ritchie《The C programming Language》一书中许多简略的地方,而且精彩地总结了C语言编程实践,强烈推荐!”   ——Yechiel M. Kimchi,以色列理工学院   C是一门简洁精妙的语言,掌握基本语法容易,真正能够自如运用,就不那么简单了。你难免会遇到各种各样的问题,有些可能让你百思不得其解,甚至翻遍图书馆,也找不到问题的答案。   本书的出版,填补了这一空白。书中内容是世界各地的C语言用户多年来在新闻组comp.lang.c中讨论的结晶。

2011-07-10

《C程序设计语言》——C语言圣经

《C程序设计语言》(第2版新版)讲述深入浅出,配合典型例证,通俗易懂,实用性强,适合作为大专院校计算机专业或非计算机专业的C语言教材,也可以作为从事计算机相关软硬件开发的技术人员的参考书。 《C程序设计语言》(第2版新版)原著即为C语言的设计者之一Dennis M.Ritchie和著名的计算机科学家Brian W.Kernighan合著的一本介绍C语言的权威经典著作。我们现在见到的大量论述C语言程序设计的教材和专著均以此书为蓝本。原著第1版中介绍的C语言成为后来广泛使用的C语言版本——标准C的基础。人们熟知的“hello,world”程序就是由本书首次引入的,现在,这一程序已经成为所有程序设计语言入门的第一课。

2011-07-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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