Skip to content
  • P
    Projects
  • G
    Groups
  • S
    Snippets
  • Help

Administrator / level3-lesson16-diy2

  • This project
    • Loading...
  • Sign in
Go to a project
  • Project
  • Repository
  • Issues 0
  • Merge Requests 0
  • Pipelines
  • Wiki
  • Snippets
  • Members
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Files
  • Commits
  • Branches
  • Tags
  • Contributors
  • Graph
  • Compare
  • Charts
Commit f796c92c authored 2 years ago by BellCodeEditor's avatar BellCodeEditor
Browse files
Options
  • Browse Files
  • Download
  • Email Patches
  • Plain Diff

save project

parent 1b66f268
Hide whitespace changes
Inline Side-by-side
Showing with 32 additions and 8 deletions
  • my_search.py
my_search.py
View file @ f796c92c
import random # 使用二分查找法,找出9和20在列表里面的索引
num_list = [1, 3, 5, 8, 11, 15, 17, 18, 20, 21]
testList = [1371, 102841, 1324, 124, 5432, 124, 20, 9]
alist = []
for i in range(1, 101):
alist.append(i)
num = random.choice(alist)
# 请完善二分查找函数binary_search(),查找出num在列表alist里面的索引位置
def binary_search(alist,num): def BubbleSort(varList):
\ No newline at end of file secondList = varList
for i in range(0, len(secondList) - 1):
for index in range(0, len(secondList) - 1):
if secondList[index] > secondList[index + 1]:
secondList[index], secondList[index + 1] = secondList[index + 1], secondList[index]
return secondList
def BinarySearch(findNum, searchList):
searchList = BubbleSort(searchList)
high = len(searchList) - 1
low = 0
while high >= low:
mid = (high + low) // 2
num = searchList[mid]
if num == findNum:
return mid
elif num >= findNum:
high = mid - 1
else:
low = mid + 1
return None
print(BinarySearch(9, testList))
print(BinarySearch(20, testList))
This diff is collapsed. Click to expand it.
  • Write
  • Preview
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