Skip to content

Списки

Найти значение списка, которое встречается чаще всего

Дан список чисел. Определить, какое значение встречается в нем чаще всего. Вывести его на экран.

from random import random

a = [int(random()*5) for i in range(15)]
print(a)

a_set = set(a)

most_common = None
qty_most_common = 0

for item in a_set:
    qty = a.count(item)
    if qty > qty_most_common:
        qty_most_common = qty
        most_common = item

print(most_common)
Сортировка пузырьком

Заполните список случайными числами и выведите его на экран. Выполните сортировку списка по возрастанию, используя метод пузырька. Выведите на экран отсортированный список.

from random import randint

N = 7
a = []

for i in range(N):
    a.append(randint(1, 20))
print(a)

for i in range(N-1):
    for j in range(N-i-1):
        if a[j] > a[j+1]:
            b = a[j]
            a[j] = a[j+1]
            a[j+1] = b

print(a)
Сортировка выбором

Заполните список случайными числами и выведите его на экран. Выполните сортировку списка по возрастанию, используя метод сортировки выбором. Выведите на экран отсортированный список.

from random import randint

N = 7
a = []
for i in range(N):
    a.append(randint(1, 20))
print(a)

j = N - 1
while j > 0:
    ind = 0
    for i in range(1, j+1):
        if a[i] > a[ind]:
            ind = i
    b = a[ind]
    a[ind] = a[j]
    a[j] = b
    j -= 1

print(a)
Двоичный поиск. Найти число в упорядоченном массиве.

Заполните массив случайными числами, отсортируйте его с помощью метода sort, выведите на экран. Спросите у пользователя число, которое он ищет в этом массиве. Используя метод двоичного поиска найдите этот элемент и выведите на экран его индекс.

from random import random

N = 20
array = []
for i in range(N):
    array.append(int(random()*100))
array.sort()
print(array)

number = int(input())

low = 0
high = N-1
while low <= high:
    mid = (low + high) // 2
    if number < array[mid]:
        high = mid - 1
    elif number > array[mid]:
        low = mid + 1
    else:
        print("ID =", mid)
        break
else:
    print("Нет номера")
В каких строках и столбцах матрицы содержится элемент

Пользователь вводит значение, которое может встречаться в матрице. Вывести на экран отдельно индексы строк и отдельно индексы столбцов, в которых есть указанный элемент.

from random import random
N = 6
M = 5
matrix = []
for i in range(N):
    row = []
    for j in range(M):
        row.append(int(random()*40)+10)
    matrix.append(row)

for row in matrix:
    print(row)

item = int(input("Номер range(10,50): "))

print("Строки (index):", end=" ")
for i in range(N):
    if item in matrix[i]:
        print(i, end=" ")
print()

print("Столбцы (index):", end=" ")
for j in range(M):
    for i in range(N):
        if matrix[i][j] == item:
            print(j, end=" ")
            break
print()
Back to top