FAANG 提出的 10 个 Python 问题
FAANG 提出的 10 个 Python 问题
问题 1—— 给定输入“aaaabbccca”产生输出“4a2b3c1a”?
s_in = 'aaaabbccca'
s_out = ''
c = 1
对于我在范围内(len(s_in)-1):
如果 s_in[i] == s_in[i+1]:
c=c+1
别的:
s_out=s_out+str(c)+s_in[i]
c = 1
s_out=s_out+str(c)+s_in[i+1]
打印(s_out)
问题2 - 编写一个python代码来识别列表中的条目是否具有相同的字符?
l = ['相同','不同','相同']
他们 = l[0]
标志 = 0
对于 l 中的 i:
如果我!= ele:
标志 = 1
休息
如果标志==1:打印('不同')
否则:打印('相同')
问题 3—— 你有一个整数数组,你想找到某个元素?
a = [4,2,5,7,42,35,108]
他 = 42
标志 = 0
对于我来说:
如果我 == ele:
标志 = 1
休息
如果标志==1:打印('找到')
否则:打印('未找到')
问题 4—— 你有一个排序的整数数组,你想找到某个元素?
def binary_search(arr,start,end,val):
如果开始<=结束:
中间= int((开始+结束)/ 2)
如果 arr[mid] < val:返回 binary_search(arr, mid+1, end, val)
elif arr[mid] > val: return binary_search(arr, start, mid-1, val)
否则:返回 1
否则:返回 0a = [2,4,5,7,35,42,108]
他 = 42
标志 = binary_search(a,0,len(a),ele)
如果标志==1:打印('找到')
否则:打印('未找到')
问题 5—— 对于长排序列表和短(4 个元素)排序列表,您将使用什么算法来搜索长列表中的 4 个元素?
ll = [1,2,3,4,5,6,7,8,9,10]
sl = [0,2,3,5]
佛罗里达州 = []
对于 sl 中的 i:
对于 ll 中的 j:
如果我==j:
print(i,'\t 找到')
休息
问题 6 - 给定一个不公平的硬币,正面的概率不等于 0.5,你可以使用什么算法来创建一个随机 1 和 0 的列表?
def biased_coin(cnt,prob):
lr = []
对于我在范围(cnt):
x = random.uniform(0, 1)
如果 x>prob: lr.append('tail')
否则:lr.append('head')
返回(左)随机导入
lr = biased_coin(10,.9)
LR
问题 7—— 如果给定一个整数 n 和一个数字数组,给出分成 n 个 bin 的直方图?
将 matplotlib.pyplot 导入为 plt
plt.style.use('seaborn-white')
plt.rcParams['figure.figsize'] = 15,5
%matplotlib 内联a = 范围(1,100)
n = 10
plt.hist(a,n,edgecolor='white',color='gray');
问题 8—— 编写一个显示前 n 个斐波那契数的 Python 函数?
a = 0
b = 1
我 = 0
n = 9
当我
打印(i,”\t”,a)
我=我+1
如果 i < n: 打印(i,”\t”,b)
我=我+1
a = a+b
b = b+a
问题 9—— 给定一个条形图,假设您正在从顶部倒水。您如何确定条形图中可以保留多少水?
条形图 = [5,1,3,4]
水= []
对于我在条形图中:
填充 = max(0, min(barplot[0],barplot[-1]) — i)
water.append(填充)
水条形图 = [5,3,1]
水= []
对于我在条形图中:
填充 = max(0, min(barplot[0],barplot[-1]) — i)
water.append(填充)
水
问题 10—— 编写python代码对列表进行排序?
a = [108,4,2,5,7,42,35]
对于范围内的 i(len(a)-1,0,-1):
对于范围(i)中的j:
如果 a[j]>a[j+1]:
a[j],a[j+1] = a[j+1],a[j]
一个
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明