Commit ae7f550e by BellCodeEditor

auto save

parent a075876f
#二分查找
"""
二分查找法的核心就是:通过最低索引和最高索引求和对2整除得出中间索引,
通过中间索引求出中间值不断与目标值进行对比。然后不断的缩小区间,每次都减少1/2
"""
lista=[1,3,9,12,32,41,45,62,75,77,82,95,100]
#最低索引
low=0
#最高索引
high=len(lista)-1
#目标值
guest=82
#次数
times=0
while low<=high:#最低索引小于等于最高索引
times += 1
#中间索引
mid=(low+high)//2
#中间值
num=lista[mid]
if num==guest:
print("找到啦",mid)
break#跳出循环
elif num>guest:
high=mid-1
else:
low=mid+1
print("次数是",times)
\ No newline at end of file
#插值查找
lista=[1,3,9,12,32,41,45,62,75,77,82,95,100]
#最低索引
low=0
#最高索引
high=len(lista)-1
#目标值
guest=82
#次数
times=0
while low<=high:#最低索引小于等于最高索引
times += 1
#中间索引---是插值查找的核心代码
mid=(high-low)*(guest-lista[low])//(lista[high]-lista[low])+low
#中间值
num=lista[mid]
if num==guest:
print("找到啦",mid)
break#跳出循环
elif num>guest:
high=mid-1
else:
low=mid+1
print("次数:",times)
\ No newline at end of file
#创建列表
lista=[]
for i in range(1,101):
lista.append(i)
print(lista)
#最低索引
low=0
#最高索引
high=len(lista)-1
#目标值
guest=82
#次数
times=0
while low<=high:#最低索引小于等于最高索引
times += 1
#中间索引
mid=(low+high)//2
#中间值
num=lista[mid]
if num==guest:
print("找到啦",mid)
break#跳出循环
elif num>guest:
high=mid-1
else:
low=mid+1
print("次数是",times)
\ No newline at end of file
#创建列表
lista=[]
for i in range(1,101):
lista.append(i)
print(lista)
#最低索引
low=0
#最高索引
high=len(lista)-1
#目标值
guest=82
#次数
times=0
while low<=high:#最低索引小于等于最高索引
times += 1
#中间索引---是插值查找的核心代码
mid=(high-low)*(guest-lista[low])//(lista[high]-lista[low])+low
#中间值
num=lista[mid]
if num==guest:
print("找到啦",mid)
break#跳出循环
elif num>guest:
high=mid-1
else:
low=mid+1
print("次数:",times)
\ No newline at end of file
#ord()将字符转换为十进制的数字
print(ord("0"))
print(ord("a"))
print(ord("A"))
#chr()将十进制的数字转换为字符
print(chr(66))
print(chr(98))
\ No newline at end of file
lista=input("请输入您的字符串")#input输入内容是字符串类型
lista=sorted(lista)#sorted函数将数据进行排序,并且以列表的形式进行返回
print(lista)
#最低索引
low=0
#最高索引
high=len(lista)-1
#目标值
guest="w"
#次数
times=0
while low<=high:#最低索引小于等于最高索引
times += 1
#中间索引---是插值查找的核心代码
mid=(high-low)*(ord(guest)-ord(lista[low]))//(ord(lista[high])-ord(lista[low]))+low
#中间值
num=lista[mid]
if num==guest:
print("找到啦",mid)
break#跳出循环
elif num>guest:
high=mid-1
else:
low=mid+1
print("次数:",times)
\ No newline at end of file
import turtle import turtle
import random
pen = turtle.Turtle() pen = turtle.Pen()
pen.color('sienna') pen.color('sienna')
# 画布大小 # 画布大小
w = turtle.Screen() w = turtle.Screen()
...@@ -11,5 +12,34 @@ pen.left(90) ...@@ -11,5 +12,34 @@ pen.left(90)
pen.up() pen.up()
pen.backward(150) # 后退 pen.backward(150) # 后退
pen.down() pen.down()
pen.speed(0)
def tree(n):
if n>=0:
if n<=12:
pen.pencolor(random.choice(["snow","lightcoral"]))
pen.pensize(n/3)
else:
pen.pencolor("sienna")
pen.pensize(n/10)
#随机产生角度
angle=random.randint(0,30)
length=random.randint(1,15)
pen.forward(n)
pen.right(angle)
tree(n-length)
pen.left(2*angle)
tree(n-length)
pen.right(angle)
pen.up()
pen.back(n)
pen.down()
#二叉树
tree(60)
pen.up()
pen.goto(100,-200)
pen.write("樱花真漂亮",font=("宋体",20,"bold"))
#保存画布
turtle.done() turtle.done()
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment