你也能看得懂的Python算法书 - (EPUB全文下载)

文件大小:0.61 mb。
文件格式:epub 格式。
书籍内容:

你也能看得懂的Python算法书
第1章 编程基础
第2章 双指针问题
第3章 哈希算法
第4章 深度优先遍历算法
第5章 广度优先遍历算法
第6章 回溯算法
第7章 贪心算法
第8章 动态规划算法
第9章 最短路径问题
第10章 分治算法
第1章 编程基础
掌握一门编程语言是学习算法的基础。学习编程语言是为了与计算机“交流”,只有正确的格式才能被计算机成功识别。学习编程语言的起点就是了解这门语言的语法。本书使用Python语言进行算法讲解,本章主要讲解Python 3的编程语法,涉及的主要内容有如下几项。
变量:变量的类型和操作。
三大结构:循序、分支和循环。
数组:数组的概念和使用。
函数:函数的定义与调用。
1.1 变量
变量在计算机语言中,可以用于存储不同的计算结果和不同类型的数据,或表示一个数值。变量是可变的,也就是说,它可以被重复赋值。
在认识变量之前,我们先来了解输入和输出,这样才能对程序输入数据或者看到运行后的结果。
1.1.1 输出和输入
我们以非常经典的一项任务入手,在屏幕上输出一行文字:Hello World!
在Python 3中,实现这个任务只需要一行代码(Python中“#”后方的文字为注释,不影响程序运行,详细信息见1.1.5节最后)。
01  print("Hello World!")       #注意:编写程序时一定要用英文输入法!
运行程序,输出结果为:
Hello World!
在这一行程序中,print()是用于输出的函数,“Hello World!”是输出的数据。其中双引号代表数据是一个字符串。
我们再来看如何输入数据。如果想输入一个数字,把它除以2然后打印出来,该怎么做呢?下面的程序就实现了这个功能。
01  num=int(input("Enter a number:"))  #输入一个数字,用变量num存储
02  num=num/2              #把num除以2
03  print(num)               #输出num的值
运行程序,程序输出如下:
Enter a number:
此时可以输入任意整数。我们输入6,程序输出3后结束。
在程序的第一行中,新建了变量num来存储输入的数据。因为这个变量是用于存储一个数的,所以把它命名为num,这样比较直观易懂。只要遵守变量的命名法则(参见本小节末尾),那么可以随意为变量取名。
在第一行中,input()函数用于输入数据,括号内的字符串是提示语,就是在输入数据之前输出的那一段字符串。如果括号内没有内容(input()),则不输出任何文字,用户直接输入数据即可。而input()函数外面套着的int()函数则是用于把数据转换为int类型的函数。Input()函数返回的值默认为字符串类型(string),字符串不可以进行数学运算。所以,我们使用 int()函数先把字符串转换为整型(int),再进行赋值、运算并输出。数据类型的知识会在下一小节介绍。
程序中的“=”用于给变量赋值,不是相等的意思。“=”左边必须是一个可以被赋值的变量,“=”右边可以是一个常量、变量或函数的返回值等。赋值语句运行结束后,“=”左边的变量的值更新为“=”右边的值。与其他编程语言不同,由于 Python 中变量的类型不固定,所以被赋值的变量的数据类型同样可以被更新,如下面的程序所示。
运行这段程序,输出结果为abcd。
在这一小节中我们了解了输入和输出,也对变量的概念有了初步认识。为了避免程序出错,以下是变量命名的几项法则:
变量名中只能出现字母、数字和下画线,且第一个字符不能是数字。比如,可以将变量命名为name_6,但不能将变量命名为6_name。
不要把在Python中有特殊用途的单词作为变量名,如函数名。比如,目前我们接触过的print函数,如果把print作为一个变量名称,运行程序时又用到print函数,编译器就会报错。
下面就是一个例子:
01  print=0
02  print(print)       #print函数无法被调用,print被系统认为是变量名称了
一个变量名对应一个变量,不会有两个变量有相同的变量名。变量的名字最好和变量的功能相对应,比如一个存储平均数的变量,将它命名为average比命名为abcd要直观,这样不容易记错变量名称而导致程序出错。
1.1.2 简单变量类型
Python语言中有5种标准变量类型:数字、字符串、列表、元组和字典,其中数字和字符串是比较简单的,本小节主要介绍这两种变量类型。
首先,我们来仔细了解一下变量的概念。每个变量都有一个独特的变量名,我们通过这个独特的变量名来调用这个变量的值。就像图1.1中的气球和牌子一样,人够不着气球,但是可以通过扯动牌子来拿到气球。每个牌子都对应一个单独的气球。牌子就相当于变量名,而气球就相当于变量存储的值。
现在我们知道了变量的概念,再来分类型介绍变量。
数字类型的变量是最常用的一种。数字类型还可以再细分,其中主要的两种类型为整型(int)和浮点型(float)。整型变量只能存储整数,浮点型变量则可以存储小数。
图1.1 变量与变量名
例如:
01 num1=10
02 num2=10.0
在这两行程序中,num1表示的值是整数10,num2表示的值是小数10.0。尽管这两个变量所表示的数的大小是相等的,但它们并不是同一种类型的变量。不过,它们的类型是可以相互转换的。
01 num1=10
02 num2=10.99
03 num1=float(num1)
04 num2=int(num2)
05 print(num1,num2)
运行程序,输出结果为:
10.0 10
其中,10.0是输出时num1的值,10是输出时num2的值。在程序中,float函数的作用是把整型变量转换为浮点型变量,而int函数的作用是把浮点型变量转换为整型变量。如果你足够细心,会发现原本值为10.99的num2在转换为整型之后变为了10,它的值改变了。这 ............

以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。

版权声明:书云(openelib.org)是世界上最大的在线非盈利图书馆之一,致力于让每个人都能便捷地了解我们的文明。我们尊重著作者的知识产权,如您认为书云侵犯了您的合法权益,请参考版权保护声明,通过邮件openelib@outlook.com联系我们,我们将及时处理您的合理请求。 数研咨询 流芳阁 研报之家 AI应用导航 研报之家
书云 Open E-Library » 你也能看得懂的Python算法书 - (EPUB全文下载)