Сортировка слиянием
Алгоритм разделяет список на две части, каждую из них он разделяет еще на две и так далее, пока не останутся отдельные единичные элементы. Далее соседние элементы сортируются парами. Затем эти пары объединяются и сортируются с другими парами, пока не обработаются все элементы в списке.
#алгоритмы
Алгоритм разделяет список на две части, каждую из них он разделяет еще на две и так далее, пока не останутся отдельные единичные элементы. Далее соседние элементы сортируются парами. Затем эти пары объединяются и сортируются с другими парами, пока не обработаются все элементы в списке.
#алгоритмы
👍4🤨1
Что выведет приведённый выше код?
Anonymous Quiz
25%
[1, 3, 5, 7 9]
17%
[2, 4, 6, 8, 10]
29%
IndexError
29%
[6, 7, 8, 9, 10]
Метод pop()
Метод pop() удаляет элемент по указанному индексу и возвращает его. В метод pop() передается один необязательный аргумент - индекс элемента, который требуется удалить.
Если индекс не указан, то метод удаляет и возвращает последний элемент списка. Если список пуст или указан индекс за пределами диапазона, то во время выполнения происходит ошибка.
#методы
Метод pop() удаляет элемент по указанному индексу и возвращает его. В метод pop() передается один необязательный аргумент - индекс элемента, который требуется удалить.
Если индекс не указан, то метод удаляет и возвращает последний элемент списка. Если список пуст или указан индекс за пределами диапазона, то во время выполнения происходит ошибка.
#методы
👍3🤔1
🤔5👏2
Тип данных Counter
Тип Counter является подтипом типа dict, специально разработанный для подсчета хешируемых объектов в Python. Counter хранит объекты в качестве ключей, а их количество — в качестве значений.
#типы_данных
Тип Counter является подтипом типа dict, специально разработанный для подсчета хешируемых объектов в Python. Counter хранит объекты в качестве ключей, а их количество — в качестве значений.
#типы_данных
👍3
Метод reverse()
Метод reverse() применяется к изменяемым последовательностям, таким как списки. Он изменяет порядок элементов списка на обратный. reverse() является методом списка, а не отдельной функцией, и не возвращает новый список, а изменяет существующий список «на месте».
#методы
Метод reverse() применяется к изменяемым последовательностям, таким как списки. Он изменяет порядок элементов списка на обратный. reverse() является методом списка, а не отдельной функцией, и не возвращает новый список, а изменяет существующий список «на месте».
#методы
👍3
Книга: "Простой Python. Современный стиль программирования. 2-е изд. Любанович Б."
С помощью этой книги вы изучите базу, лучшие практики тестирования, отладки, повторного использования кода, асинхронное программирование и многое другое. В наличие примеры кода и упражнения, которые помогут в создании приложений. В новом издании убрали лишнюю воду: глав стало больше, и они стали короче. Также появился раздел с f-строками.
#книги
С помощью этой книги вы изучите базу, лучшие практики тестирования, отладки, повторного использования кода, асинхронное программирование и многое другое. В наличие примеры кода и упражнения, которые помогут в создании приложений. В новом издании убрали лишнюю воду: глав стало больше, и они стали короче. Также появился раздел с f-строками.
#книги
👏4
Scrapy
Scrapy – это библиотека, с которой удобно собирать данные для вашего приложения. Ее используют для написания поисковых роботов (веб-краулеров) и других алгоритмов для сбора данных. Она поддерживает асинхронность и поэтому позволяет быстро и эффективно решать самые разные задачи: от загрузки веб-страниц до их обработки и сохранения в различных форматах.
#библиотеки
Scrapy – это библиотека, с которой удобно собирать данные для вашего приложения. Ее используют для написания поисковых роботов (веб-краулеров) и других алгоритмов для сбора данных. Она поддерживает асинхронность и поэтому позволяет быстро и эффективно решать самые разные задачи: от загрузки веб-страниц до их обработки и сохранения в различных форматах.
#библиотеки
Jump Search
Jump Search похож на бинарный поиск тем, что он также работает с отсортированным массивом и использует аналогичный подход «разделяй и властвуй» для поиска по нему.
Jump search сначала определит размер прыжка путем вычисления math.sqrt(len(lys)). Поскольку у нас 9 элементов, размер прыжка будет √9 = 3.
Далее мы вычисляем значение переменной right. Оно рассчитывается как минимум из двух значений: длины массива минус 1 и значения left + jump, которое в нашем случае будет 0 + 3 = 3. Поскольку 3 меньше 8, мы используем 3 в качестве значения переменной right.
Теперь проверим, находится ли наш искомый элемент 5 между lys[0] и lys[3]. Поскольку 5 не находится между 1 и 4, мы идем дальше.
Затем мы снова делаем расчеты и проверяем, находится ли наш искомый элемент между lys[3] и lys[6], где 6 — это 3 + jump. Поскольку 5 находится между 4 и 7, мы выполняем линейный поиск по элементам между lys[3] и lys[6] и возвращаем индекс нашего элемента.
#алгоритмы
Jump Search похож на бинарный поиск тем, что он также работает с отсортированным массивом и использует аналогичный подход «разделяй и властвуй» для поиска по нему.
Jump search сначала определит размер прыжка путем вычисления math.sqrt(len(lys)). Поскольку у нас 9 элементов, размер прыжка будет √9 = 3.
Далее мы вычисляем значение переменной right. Оно рассчитывается как минимум из двух значений: длины массива минус 1 и значения left + jump, которое в нашем случае будет 0 + 3 = 3. Поскольку 3 меньше 8, мы используем 3 в качестве значения переменной right.
Теперь проверим, находится ли наш искомый элемент 5 между lys[0] и lys[3]. Поскольку 5 не находится между 1 и 4, мы идем дальше.
Затем мы снова делаем расчеты и проверяем, находится ли наш искомый элемент между lys[3] и lys[6], где 6 — это 3 + jump. Поскольку 5 находится между 4 и 7, мы выполняем линейный поиск по элементам между lys[3] и lys[6] и возвращаем индекс нашего элемента.
#алгоритмы
👏4
Метод now()
Метод now(), принадлежащий типу данных datetime, выводит текущее локальное время (время на устройстве) на момент исполнения программы.
#методы
Метод now(), принадлежащий типу данных datetime, выводит текущее локальное время (время на устройстве) на момент исполнения программы.
#методы
👍3👏1
Тип данных Decimal
Python реализует десятичные числа как числа двойной точности с плавающей точкой, которые зависят от машины. Для вычислений, где точность критична для бизнеса, числа с плавающей точкой могут вызывать ошибки при выполнении на другой машине. Поэтому для таких приложений нам нужен независимый от машины тип данных для реализации десятичных чисел, который был реализован с помощью модуля decimal в Python. Кроме того, модуль decimal реализует десятичное число с точностью до 28 десятичных цифр, в то время как числа с плавающей запятой имеют точность до 18 цифр.
В случаях, когда необходимо сравнить десятичные значения, следует использовать десятичный модуль, а не числа с плавающей точкой.
#типы_данных
Python реализует десятичные числа как числа двойной точности с плавающей точкой, которые зависят от машины. Для вычислений, где точность критична для бизнеса, числа с плавающей точкой могут вызывать ошибки при выполнении на другой машине. Поэтому для таких приложений нам нужен независимый от машины тип данных для реализации десятичных чисел, который был реализован с помощью модуля decimal в Python. Кроме того, модуль decimal реализует десятичное число с точностью до 28 десятичных цифр, в то время как числа с плавающей запятой имеют точность до 18 цифр.
В случаях, когда необходимо сравнить десятичные значения, следует использовать десятичный модуль, а не числа с плавающей точкой.
#типы_данных
👍3
👍2
Функция help()
Функция help() является встроенной функцией Python, которая предоставляет доступ к документации и информации о функциях, методах, модулях, классах и объектах. Эта функция может быть очень полезна при изучении новых библиотек или работе с неизвестными объектами и методами, поскольку позволяет получить информацию о них прямо в интерпретаторе Python.
#функции
Функция help() является встроенной функцией Python, которая предоставляет доступ к документации и информации о функциях, методах, модулях, классах и объектах. Эта функция может быть очень полезна при изучении новых библиотек или работе с неизвестными объектами и методами, поскольку позволяет получить информацию о них прямо в интерпретаторе Python.
#функции
👏2
Microsoft объявила о замене одной из кнопок Win на всех новых клавиатурах на кнопку для запуска ИИ-помощника Copilot
4 января 2024 года Microsoft объявила о грядущей замене одной из кнопок Windows на всех новых компьютерных клавиатурах на кнопку для запуска ИИ-помощника Copilot. Новая кнопка в виде элемента из толстых и тонких полосок с формой типа ленты Мёбиуса будет располагаться рядом с правой клавишей Alt.
С помощью клавиши Copilot пользователи Windows 11 смогут взаимодействовать с приложениями и службами операционной системы. Также предполагается, что ИИ-помощник сможет отвечать на вопросы пользователя примерно так, как это делает чат-бот ChatGPT.
Ожидается, что первые настольные компьютерные клавиатуры и ноутбуки с новой кнопкой будут представлены в январе этого года. В Microsoft уточнили, что клавиша Copilot в некоторых случаях заменит кнопку «Меню» или правый Ctrl, причём в более крупных клавиатурах может хватить места как для кнопки Copilot, так и для штатного правого Control.
4 января 2024 года Microsoft объявила о грядущей замене одной из кнопок Windows на всех новых компьютерных клавиатурах на кнопку для запуска ИИ-помощника Copilot. Новая кнопка в виде элемента из толстых и тонких полосок с формой типа ленты Мёбиуса будет располагаться рядом с правой клавишей Alt.
С помощью клавиши Copilot пользователи Windows 11 смогут взаимодействовать с приложениями и службами операционной системы. Также предполагается, что ИИ-помощник сможет отвечать на вопросы пользователя примерно так, как это делает чат-бот ChatGPT.
Ожидается, что первые настольные компьютерные клавиатуры и ноутбуки с новой кнопкой будут представлены в январе этого года. В Microsoft уточнили, что клавиша Copilot в некоторых случаях заменит кнопку «Меню» или правый Ctrl, причём в более крупных клавиатурах может хватить места как для кнопки Copilot, так и для штатного правого Control.
👍3