日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

去哪笔试两题

發布時間:2023/12/13 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 去哪笔试两题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1,a是一個有序數組,但經過向右移動數位,現在預在a中查找元素key的位置,如不存在,返回0。例如a=[5,6.7.8,1,2,3,4].

實現:

1 #quna1 2 def findPos(a,key): 3 min=a[0]; 4 for i in range(len(a)): 5 if a[i]<min: 6 min=a[i]; 7 minpos=i; 8 print min,minpos#找到起點,由此將數組分為兩半 9 if key>a[minpos-1]: 10 return 0; 11 elif key>a[-1]: 12 return pos(a[0:minpos],key)+1; 13 else: 14 return pos(a[minpos:],key)+minpos; 15 def pos(que,key):#二分查找,復雜度為o(logn) 16 low=0;high=len(que)-1; 17 while(low<=high): 18 mid=(low+high)/2; 19 if que[mid]<key: 20 low=mid+1; 21 elif que[mid]>key: 22 high=mid-1; 23 else: 24 return mid; 25 return low; 26 27 a=[3,4,5,6,7,8,9,0,1,2,3] 28 print findPos(a,2)

2,字符串解密。例如‘ab2e3d’輸出‘ababeeed’

實現:

1 # quna2 2 def decode(s): 3 rs='' 4 i=0;k=0;flag=0 5 while i<len(s): 6 if s[i].isdigit(): 7 d=i; 8 while s[d].isdigit():#探測后面數是多少 9 if d<len(s)-1:d+=1; 10 else:flag=1;break#如果超出s的長度標記flag 11 if flag:n=int(s[i:]);rs=rs+s[k:i]*n;break 12 else:n=int(s[i:d]);rs=rs+s[k:i]*n;i=d;k=d 13 14 else: 15 i+=1 16 else: 17 rs=rs+s[k:] 18 return rs 19 print decode('3abc13dd2ee')

?

轉載于:https://www.cnblogs.com/fkissx/p/4390234.html

總結

以上是生活随笔為你收集整理的去哪笔试两题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。