class MyClass:
"""一个简单的类实例"""
i =12345
def f(self):
return'hello world'# 实例化类
x = MyClass()# 访问类的属性和方法
print("MyClass 类的属性 i 为:", x.i)
print("MyClass 类的方法 f 输出为:", x.f())# MyClass 类的属性 i 为: 12345# MyClass 类的方法 f 输出为: hello world
def函数
def fun():
a =10
print(a)return a+100
print(fun())"""
10110"""
二分法
lst =[1,3,5,46,78]n=int(input("输入你查找的数:"))
left =0
right = len(lst)-1
mid =(left+right)//2
# print(lst[mid]) while left <= right:
mid =(left+right)//2
if n > lst[mid]:
left=mid+1
elif n < lst[mid]:
right=mid-1
else:
print('位置在%s'%mid)break
else:
print('没有此数据')
//写一个函数BinarySeach,在包含size个元素的、从小到大排序的int数组a里查找元素p,如果找到,则返回元素下标,如果找不到,则返回-1。要求复杂度O(log(n))
int BinarySearch(int a[], int size, int p){
int low =0; //查找区间的左端点
int high = size - 1; //查找区间的右端点
while(low <= high){ //如果查找区间不为空就继续查找
mid =(low + high) // 2; //取查找区间正中元素的下标
if(p == a[mid])return mid;else if(p > a[mid])
low = mid + 1; //设置新的查找区间的左端点
else
high = mid - 1; //设置新的查找区间的右端点
}return -1;}