Ad banner
Ad banner

АЛГОРИТМЫ в ПРОГРАММИРОВАНИИ для новичков | Левенштейн, Фибоначчи, Факториал и т.д.

Рассказываю про простейшие алгоритмы. Их должен знать каждый программист. Курс «Python для веб-разработки» в …

(Visited 31 times, 1 visits today)

You Might Be Interested In

Комментарии (26)

  1. Линейный поиск сам простой алгоритм даже звучит смешно но лучше кнш бинарный изучать так как самый быстрый поиск это бинарный

  2. это было понятно только вам, если бы мне с самого начала так обьясняли я бы в жизни не поняла алгоритмов, эти обьяснения подходят только для тех кто уже что то знает или кто то из универа

  3. Бл, программирую много-много лет, и ни разу не нужно было искать фибоначи, факториалы, пузырьки, односвязные списки.

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

    Эти основные алгоритмы в продакшене – НАХЕР НЕ НУЖНЫ!!!

    Собеседования проводят кретины наследственно-потомственные.

  4. У меня с факториалом получилось куда лучше и проще:

    nums = int(input("Введите число: "))
    jk = 0
    j = 1

    while True:
    jk += 1
    j = j * jk
    if jk == nums:
    break

    print(j)

  5. Хватит учить вычислять факториал рекурсией! Факториал это типичная циклическая задача "перемножь все числа или типа того"! Рекурсия про него только путает!
    f = 1
    for i in range(5):
    f *= i
    разве не понятнее, чем рекурсия?

  6. В сортировке пузырьком, неоптимизорованный вариант с while loop показал результат ~5 раз быстрее чем оптимизированный с двумя for лупами. Либо современные процессоры как то подругому оптимизированны, не понял почему так. Есть варианты объяснения?

  7. Ну впринципе лично мне сложно представить практическую пользу факториала тысячи, так что рекурсии скорее всего хватит

  8. я думаю для факториала самый простой код будет:
    def factorial_(n):
    answer = 1
    for i in range(1, n+1):
    answer *= i

    return answer

    так даже факториал 3000 будет высчитыватся мгновенно (у меня так)

  9. bubble sort я лично так пишу, мне кажется это самый простой и понятный вариант
    for x in range(len(nums)):
    for i in range(len(nums)-x-1):
    if nums[i] > nums[i+1]:
    nums[i], nums[i+1] = nums[i+1], nums[i]
    i = 0
    (с i=0 никакой swap не нужен, это и понять легче)

  10. ахах кто читал "Грокаем алгоритмы"? заметил ошибку сразу в начале бинарный поиск стр 28 mid = (low + high) / 2 стр 29 mid = (low + high). заметил добавив в код итерационную переменную) верный вариант mid = int((low + high) / 2) . тогда и 1 задание выполняется правильно

  11. Я собирался спать, но почему бы не написать одним пальцем в комментариях бабл сорт и вычисление факториала?
    public static long calculateFactorial(int n){
    if(n < 2) return 1;
    long res = 1;
    for(int i = 2, i <= n, i++){
    res *= i;
    }
    return res;
    }
    public static int[] bubbleSort(int[] a){
    for(int i = 0, i < a.length – 1, i++){
    for(int j = 0, j < a.length – 1 – i, j++){
    if(a[j] > a[j+1]){
    int temp = a[j];
    a[j] = a[j+1];
    a[j+1] = temp;
    }
    }
    }
    return a;
    }

Post A Comment For The Creator: Хауди Хо™ - Просто о мире IT!

Ваш адрес email не будет опубликован. Обязательные поля помечены *