Searching & max / min · Поиск и макс./мин.
Linear search
- A linear search looks at each item in turn until it finds the target.
- It is a named standard method in the syllabus.
- Use a loop and remember when you find a match.
Линейный поиск
- Линейный поиск просматривает каждый элемент по очереди, пока не найдет цель.
- Это именованный стандартный метод в программе.
- Используйте цикл и запоминайте момент, когда нашли совпадение.
nums = [4, 9, 2, 7]
target = 9
found = False
for n in nums:
if n == target:
found = True
print(found) # True
Linear search, step by step · Линейный поиск, шаг за шагом
A linear search checks each item in turn until it finds the target. · Линейный поиск проверяет каждый элемент по очереди, пока не найдет целевой.
Finding the maximum
- Start by assuming the first item is the biggest.
- Then check the rest; if one is bigger, remember it instead.
Поиск максимума
- Начните с предположения, что первый элемент самый большой.
- Затем проверьте остальные; если какой-то больше, запомните его вместо предыдущего.
nums = [4, 9, 2, 7]
biggest = nums[0]
for n in nums:
if n > biggest:
biggest = n
print(biggest) # 9
Finding the minimum
- The same idea, but keep the smallest value seen so far.
Поиск минимума
- Та же идея, но сохраняйте наименьшее из уже увиденных значений.
nums = [4, 9, 2, 7]
smallest = nums[0]
for n in nums:
if n < smallest:
smallest = n
print(smallest) # 2
In the exam: standard methods
- Linear search and finding maximum / minimum / average are named in section 7.
На экзамене: стандартные методы
- Линейный поиск и нахождение максимума / минимума / среднего значения рассматриваются в разделе 7.
Found ← FALSE
FOR I ← 1 TO 4
IF Number[I] = Target
THEN
Found ← TRUE
ENDIF
NEXT I
Common mistakes
- Linear search checks each item in turn until it finds the target.
- For max or min, start from the first item, then compare the rest against it.
Распространенные ошибки
- Линейный поиск последовательно проверяет каждый элемент, пока не найдет целевой.
- Для поиска максимума или минимума начните с первого элемента, затем сравните остальные с ним.
Now you try
- Loop through the list to search or compare.
- Press Check answer to test your code.
Теперь попробуйте сами
- Проходите по списку для поиска или сравнения.
- Нажмите Check answer (Проверить ответ), чтобы протестировать свой код.
Write contains(nums, target) that returns True if target is in the list, using a linear search loop (do not use the in keyword). · Напишите contains(nums, target), которая возвращает True, если ⟨target⟩ находится в списке, используя цикл линейного поиска (не используйте ключевое слово in).
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
The list nums is set. Find the largest value with a loop and store it in biggest (do not use max()). · Список nums задан. Найдите наибольшее значение с помощью цикла и сохраните его в biggest (не используйте max()).
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
Find the smallest value in nums with a loop and store it in smallest (do not use min()). · Найдите наименьшее значение в nums с помощью цикла и сохраните его в smallest (не используйте min()).
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.