知识点:
1,冒泡排序、快速排序、简单插入排序、简单选择排序在最坏情况下比较次数均为n(n-1)/2,堆排序在最坏情况下比较次数为nlog(2↓)n,在最坏情况下希尔排序需要比较的次数是n(↑r)(1<r<2)。
2,树中结点树 = 树中所有结点的度之和 + 1
3,循环链表是线性表的一种链式存储结构
循环队列是队列的一种顺序存储结构。
4,软件具有以下特点:
(1)软件是一种逻辑实体
(2)软件没有明显的制作工程
(3)软件在使用期间不存在磨损、老化的问题。
(4)对硬件和环境具有依赖性。
(5)软件复杂性高,成本昂贵。
(6)软件开发涉及诸多的社会因素。
5,数据流图是系统逻辑模型的图形表示,从数据传递和加工的角度,来刻画数据流从输入到输出的移动变化过程,它直接支持系统的功能建模。
6,结构化程序的三种基本控制结构是 顺序、选择和重复
7,同一个关系模型的任意两个元组值不能全相同
8,在python语言中,想要在列表中的任意位置插入元素,一般使用insert()方法。
insert()方法有两个参数:第一个参数代表在列表中的位置,第二个参数是在这个位置插入的元素,注意:插入时,是插入该位置之前。
9,在python语言中,写文件操作时定位到某个位置所用到的函数是seek();
10,采用文本方式读入文件,文件经过编码形成字符串,打印出有含义的字符;
采用二进制方式打开文件,文件被解析为字节流。
11,CSV是二维数据的存储格式。
12,pandas是用于数据分析的第三方库。
操作题:
1,从键盘输入4个数,各数采用空格分隔,对应为变量x0,y0,x1,y1.
计算两点(x0,y0)和(x1,y1)之间的距离,屏幕输出这个距离,保留一位小数。
代码:
ntxt = input("请输入4个数字(空格分隔):")
nls = ntxt.split('')
x0 = eval(nls[0])
y0 = eval(nls[1])
x1 = eval(nls[2])
y1 = eval(nls[3])
r = pow(pow(x1 - x0,2) + pow(y1 - y0,2),0.5)
print("{:.1f}".format(r))
2,键盘输入一段中文文本,不含标点符号和空格,命名为变量txt,采用jieba库对其进行分词,输出该文本中词语的平均长度,保留1位小数。
代码:
import jieba
txt = input("请输入一段中文文本:")
ls = jieba.lcut(txt)
print("{:.1f}".format(len(txt)/len(ls)))
3,键盘输入一个9800-9811之间的正整数n,作为Unicode编码,把n-1、n和n+1三个Unicode编码对应字符按照如下格式输出屏幕:宽度为11个字符,加号字符+填充,居中。
代码:
n = eval(input("请输入一个数字:"))
print("{:+^11}".format(chr(n-1)+chr(n)+chr(n+1)))
4,使用turtle库的fd和seth函数绘制一个正方形,边长像素为200
代码:
import turtle
d = 0
for i in range(4):turtle.fd(200)d = d + 90turtle.seth(d)