知識點:
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)
?