Написал свой архиватор с нуля!

Поделиться
HTML-код
  • Опубликовано: 26 окт 2024

Комментарии • 120

  • @developnya
    @developnya  4 месяца назад +11

    дополнение к видео, почему то я это не уточнил:
    алгоритм хаффмана не предназначен для не текстовых данных, из за высокой энтропии при байтовых представлениях(фотки/видео/etc)

    • @escise
      @escise 4 месяца назад +1

      На самом деле всё зависит от формата фото/видео. Если это уже сжатый формат (PNG, JPEG, MP4) - очевидно что его средняя энтропия близится к 8 битам на оригинальный байт, то есть вся избыточность уже была удалена, и сжимать там нечего. Если это несжатый формат а-ля AVI, WAV или BMP - там энтропия может быть совершенно разной и сжатие вполне возможно

    • @yokotoka
      @yokotoka 4 месяца назад +1

      @@escise там ещё в зависимости от формата можно перекодировать файл в другое представление, чтобы "помочь" хаффману складывать частые последовательности ближе к корню дерева

    • @escise
      @escise 4 месяца назад

      @@yokotoka да, например с помощью преобразования Барроуза-Виллера или MTF. BZip2 делает именно так

  • @Artym_Q
    @Artym_Q 4 месяца назад +105

    Увидев превью, думал, что будет что-то вроде "import winrare", а тут годный видос про базовые алгоритмы. Однозначно лайк и подписка

    • @developnya
      @developnya  4 месяца назад +4

      подписывайся, здесь много такого)

  • @husky7277
    @husky7277 4 месяца назад +22

    блин, смотришь и улыбка появляется, от того, что видишь настолько увлечённого в своё дело и радостного человека. Делай ещё видосы с прикольными проектами, у тебя круто получается.

    • @developnya
      @developnya  4 месяца назад

      очень приятно, спасибо!

  • @enosunim
    @enosunim 4 месяца назад +14

    "Я написал свой архиватор с нуля!"
    >Python
    >Алгоритм Хаффмана
    >collections
    >pickle
    >магия
    >с нуля
    >свой винрар

    • @developnya
      @developnya  4 месяца назад +1

      я тебе напишу тоже самое на чистом си, просто кто это будет смотреть?)
      один из следующих видосов будет на плюсах, но это больше времени + меньше виральности
      А НАЗВАНИЕ ЭТО КЛИКБЕЙТ ПАЦАНЫ НУ ВЫ ЧТО ВООБЩЕ ГЛУПЫЕ))
      про магию реально кринж кстати, но видос без сценария

    • @enosunim
      @enosunim 4 месяца назад +6

      Так и я о чем, вместо "Реализация алгоритма Хаффмана на языке Python с использованием модулей collections и pickle" имеем "Для того чтобы сделать архиватор, вам нужен простой, советский..."

    • @developnya
      @developnya  4 месяца назад +1

      маркетинг бро, ты плох в маркетинге

    • @enosunim
      @enosunim 4 месяца назад +3

      Я очень хорош в маркетинге = ) Пиши кликбейт и к тебе придут те, кто еще верит в кликбейт. Впрочем может тебе и нужна такая аудитория, будешь рекламить у них 1 икс бейт = )

    • @derus1559
      @derus1559 4 месяца назад +2

      @@enosunim жаль, что далеко не все поймут в чем же дело)))) действительно тонко))))) не так уж много и образованных в наше время, кто знает, почему это так интересно и необычно))))

  • @searld1639
    @searld1639 4 месяца назад +18

    4 задание игэ информатика, погнали

  • @skill_x_8016
    @skill_x_8016 4 месяца назад +5

    Спасибо за видео) было член интересно 🔥
    Хорошая подача))

    • @developnya
      @developnya  4 месяца назад

      спасибо!

    • @koavien
      @koavien 3 месяца назад

      было пенис интересно

  • @АндрейПешков-м8б
    @АндрейПешков-м8б 3 месяца назад +1

    Очень классный, самобытный канал. Побольше бы такого контента на ютубе. Уже устал от кликбейтных заставок и видосов снятых целой группой видеооператоров)

  • @dartrisen
    @dartrisen 4 месяца назад +17

    он так руками водит будто читает рэп...

    • @bald_agent_smith
      @bald_agent_smith 4 месяца назад +2

      Программирование это и есть рэп своего рода

    • @strelkan
      @strelkan 4 месяца назад

      @@bald_agent_smith рэп это кал, не надо его тащить в код

  • @beyzson7
    @beyzson7 4 месяца назад +5

    Наконец-то условие Фано пригодилось

  • @DenVeR-PRO
    @DenVeR-PRO 4 месяца назад +2

    Чувак, все круто, однозначно лайкос! Постарайся контроллировать речь, и не говорить «да» в конце каждой мысли. Если прям беда и не получается, пиши сценарий к видосу.

  • @_english_9025
    @_english_9025 4 месяца назад +1

    Честно говоря не особо понял, но видео правда невероятно интересное и увлекательное. Удачи в развитии

  • @chessplayer123
    @chessplayer123 4 месяца назад +4

    супер редко оставляю комментарии, но ты крутой тип. "Для продвижения канала"

    • @developnya
      @developnya  4 месяца назад

      одна любовь

  • @СергейИванов-ц8ь6ы
    @СергейИванов-ц8ь6ы 4 месяца назад +1

    -ты понял что нибудь из этого видео да ?
    -нет да

  • @ForseNight
    @ForseNight 4 месяца назад +6

    Осталось сделать видео про все алгоритмы сжатия в том числе и PAQ8 :>

  • @mass-any_key-lite
    @mass-any_key-lite 4 месяца назад +1

    ламер понес околесицу.

  • @Roberto-cn5bs
    @Roberto-cn5bs 4 месяца назад +10

    потрясающий потолок

  • @RunBull
    @RunBull 4 месяца назад +2

    мне кажется это похоже на токенизацию текста в языковых нейронках, там чем чаще встречаются слова или предлоги тем меньше они имеют цифру

  • @jamshoot6475
    @jamshoot6475 4 месяца назад +2

    если вдруг случайно кто то знает профессора Салимова, вы легенды

  • @escise
    @escise 4 месяца назад +1

    Интересное решение, но всё-таки было бы лучше использовать битовую арифметику вместо строки нулей и единиц, потому что по времени и памяти это будет занимать очень много в сравнении с ней. Ну и стоило наверное сказать что алгоритм Хаффмана - это сжатие без потерь, которое относят к энтропийным методам, наряду с арифметическим кодированием (вообще весёлая штука, теоретически способная сжать любую строку в одно число). Ещё есть словарные методы, такие как семейство LZ, RLE, и более современные, которые используют моделирование контекста, тоже отдельная очень интересная тема)
    А вообще, довольно забавно, что по сути курсовой работой Хаффмана сейчас во всём мире пользуются как основным инструментом сжатия)

  • @KanalSinyaKlashka
    @KanalSinyaKlashka 4 месяца назад +2

    прикол в том, что мы делали архиватор по хаффману месяц назад на си))) (первый курс вуза)

    • @developnya
      @developnya  4 месяца назад +2

      хороший вуз

    • @KanalSinyaKlashka
      @KanalSinyaKlashka 4 месяца назад

      @@developnya обычный, с такими же проблемами, как и все, только студентов больше дрючат, но знания, полезные для работы, приходится доставать самому

    • @developnya
      @developnya  4 месяца назад +1

      @@KanalSinyaKlashka у нас по си на первом курсе было сделать змейку))
      хаффман был ток в конце второго

    • @developnya
      @developnya  4 месяца назад +2

      @@KanalSinyaKlashka а чо ты хотел чтоб тебя в вузе джаваскрипт фреймворкам учили которые устаревают за год?
      в вузике базу дают дальше ты можешь сам выбрать специализацию(ну это в идеале:)

    • @KanalSinyaKlashka
      @KanalSinyaKlashka 4 месяца назад

      @@developnya у меня в вузе дают матлог, суть которого в том, что люди хотели сделать ии целиком на математике, и в итоге выяснили, что это невозможно) ну а так я согласен, хотя грустно, что здесь нет направлений программирования, что нужны мне (геймдев)

  • @dedmamba397
    @dedmamba397 4 месяца назад +1

    Не пишут комментарии обычно, но видос крутой, коммент для продвижения

  • @theexplosive583
    @theexplosive583 4 месяца назад +1

    До защиты диплома 1 день, проект полуготовый, а я тут смотрю видео про то как архиватор на питоне написалиxDxDxD
    Согласен с занятостью, хочется писать по кайфу, а не страдать какой то непонятной хуйней.

  • @ДядяШтопр
    @ДядяШтопр 4 месяца назад +1

    Глянь LZW, очень простой алгоритм, и можно сначала закодировать хаффманом потом lzw

  • @cyrillcheckout
    @cyrillcheckout 4 месяца назад

    Когда открыл первую главу по алгоритмам. Мама, я программироваю!

    • @developnya
      @developnya  4 месяца назад

      вынужден извиниться, в комментариях и ни такое прочитаешь!
      so sorry

    • @cyrillcheckout
      @cyrillcheckout 4 месяца назад +1

      @@developnya все норм) мне просто ютуб порекомендовал твою хрень. Я не в обиде.

    • @MrLotrus
      @MrLotrus 4 месяца назад +2

      Это в какой конкретно книге этот алгоритм в первой главе?

  • @imbydlo1552
    @imbydlo1552 4 месяца назад +1

    Почему этот видос в моих рекомендациях?

    • @strelkan
      @strelkan 4 месяца назад

      может вы интересовались татуироваными пиздюками?

  • @MemphisWorld
    @MemphisWorld 4 месяца назад +3

    жоский репост легенды

    • @developnya
      @developnya  4 месяца назад

      хаха, лучший❤️

  • @nicesoul5935
    @nicesoul5935 4 месяца назад +2

    Блин здорово, прям как в егэ

  • @asmadeus2136
    @asmadeus2136 4 месяца назад +4

    Ура, легенда вернулась!!!

  • @b213videoz
    @b213videoz 4 месяца назад +2

    A я сегодня наконец то ломанул Ultima II для Atari 800, там не бblло поддержки джойстика - пришлось свой хак на 6502 ассемблере пихать 🤪

  • @UserSo4reUsu75ry
    @UserSo4reUsu75ry 4 месяца назад +1

    А ты симпатяга, я бы с тобой погулял )

  • @bomzh232
    @bomzh232 4 месяца назад +1

    Ты зачем хромак на потолок повесил

  • @LithiumDeuteride-6
    @LithiumDeuteride-6 4 месяца назад +1

    как запустить код питухона если не установлен интерпретатор? При этом установка запрещена.

    • @developnya
      @developnya  4 месяца назад

      py2exe или что то подобное

  • @big_aim2006
    @big_aim2006 4 месяца назад +3

    огоооо чтооо?? егэ по инфе))

  • @fantasypicture3355
    @fantasypicture3355 4 месяца назад +1

    Обожаю твои видосы!

  • @Tolyan97kartofan
    @Tolyan97kartofan 4 месяца назад +1

    красавчик, успехов

  • @thekramen58
    @thekramen58 4 месяца назад +1

    недавно написал тоже хаффмана, но на чистом си

  • @lighter1080
    @lighter1080 4 месяца назад +1

    братух, ты че, вмазанный чтоли?

  • @Mellstroy4ek-c5e
    @Mellstroy4ek-c5e 4 месяца назад

    интересно .но есть 7zip который не весит ничего, и распаковывает практически все

  • @delinex1253
    @delinex1253 4 месяца назад +1

    А что если этот цикл повторять несколько раз

    • @developnya
      @developnya  4 месяца назад

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

    • @KanalSinyaKlashka
      @KanalSinyaKlashka 4 месяца назад

      у нас было задание сжать таким алгоритмом файл по два раза, ну и на самом деле нужно смотреть, сколько байт занимает изначальный файл) просто для маленьких файлов дерево выходит настолько большим при сжатии, что бывают случаи, что файл станет даже еще больше размером аххааххахх но в теории какие-то большие файлы (по типу видеороликов) можно эффективно так сжимать по несколько раз

    • @KanalSinyaKlashka
      @KanalSinyaKlashka 4 месяца назад

      это происходит из-за того, что у вас будет ооочень много различных символов после первого сжатия (от 00000000 до 11111111), а если вы сжимаете сразу по два байта (например символы юникода так сжимают чаще всего, хотя и обычный алгоритм будет работать), то выходит , что дерево уже будет от 00..0(16 нулей) до 11..1)

    • @developnya
      @developnya  4 месяца назад

      @@KanalSinyaKlashka чистый алгоритм хаффмана плохо работает не на текстовых данных, видео он он не сожмет а сделает его x10 из за высокой энтропии)

  • @Vvv35171
    @Vvv35171 4 месяца назад

    ещё один "интерет на флешку", гусей не забудь)))

  • @АнтонШевков-н6г
    @АнтонШевков-н6г 4 месяца назад

    Привет, хочу научиться программировать на пайтоне, подскажи откуда лучше всего черпать знания

    • @developnya
      @developnya  4 месяца назад +1

      книги и много практики - мой способ

    • @daiske2867
      @daiske2867 4 месяца назад +4

      Если прям интересно, то вот поделюсь такой инфой
      Начнем с азов, необходимо начать вести электронный журнал заметок aka конспект, это более общий совет, он в целом тебе упростит обучение. Как, начав его вести, ты фактически будешь создавать себе гугл, только он будет конкретно выполнять запросы под тебя, соответственно они будут наиболее значимыми и в последствии ты сможешь быстро к ним обращаться, также ты сможешь туда заносить свои гипотезы, которые ты подметил в ходе обучения.
      Все для чего, чтобы открыть документацию, user guide или любую другую cooking book с официального сайта. Начинаешь ее жестко читать, заодно приучивая себя к правильному паттерну обучения из первых уст, так как по ходу работы ты будешь взаимодействовать с самыми разными системами, которые не обязательно будут к тебе дружелюбны, к тому же изучая из уст пересказчиков ты заведомо строишь логическую цепочку от догадок того, кто тебе ее преподносит, это полезно лишь в том случае, когда ты прочел и ничего не понял, поэтому сначала сам попытайся понять, потом иди за помощью.
      Самое главное, ставишь цель, что ты хочешь написать, рассмотри свои рабочие будни, может есть некоторое действие, которое ты делаешь постоянно и хотел бы для себя упростить, ну скажем, уведомлялку, язык разметки коли привыкнешь к ведению заметок, какой-нибудь сайтик для себя, игрушку, музыкальный проигрывать, загрузчик фильмов из интернета. В общем ничем себя не отказывай.

    • @developnya
      @developnya  4 месяца назад

      крутые совет, хорош

    • @splankthugger
      @splankthugger 4 месяца назад +1

      @@daiske2867 для таких заметок подойдет obsidian. очень удобно структурировать информацию и быстро искать нужную с помощью графов.

    • @developnya
      @developnya  4 месяца назад

      сыглы, обсидиан топ

  • @mr-cojia4856
    @mr-cojia4856 4 месяца назад +1

    Информативно, спасибо за видео!

  • @hjetwd
    @hjetwd 4 месяца назад

    да уж, разжевать и правильно преподнести эту разжеванную информацию для не знающих её людей - тоже надо уметь =) ну или поступить проще - просто сыпать названиями библиотек в порядке их использования =)

  • @makester1849
    @makester1849 4 месяца назад +1

    лучшие видео

  • @Егорда
    @Егорда 4 месяца назад +1

    молодец

  • @major0hh
    @major0hh 4 месяца назад +1

    в какой проге пишешь код?

    • @developnya
      @developnya  4 месяца назад

      питоновский код в пайчарме, остальное в vsc

  • @ВазгенГузнелев
    @ВазгенГузнелев 4 месяца назад +2

    Я люблю ежиков

  • @myganter
    @myganter 4 месяца назад

    АРХИВАТОР НА ПИТУХОНЕ АХАХВАХАХХАВХАВ чел ты...

  • @__.X3.__
    @__.X3.__ 4 месяца назад +1

    а я написал свой hello world

  • @ФедукСалярин
    @ФедукСалярин 4 месяца назад +1

    очень круто

  • @xorus1228
    @xorus1228 4 месяца назад +1

    Крутышка

  • @kiahamu2615
    @kiahamu2615 4 месяца назад +1

    ООО неужели it контент не от убогого недоинфоцигана в образе "айтишник с картинки". Респект!

    • @developnya
      @developnya  4 месяца назад

      ради таких комментариев снимаю, спасибо

  • @yourma7055
    @yourma7055 4 месяца назад +2

    Да?

  • @daniilsych175
    @daniilsych175 4 месяца назад +1

    Жоский

  • @bbsjjs1016
    @bbsjjs1016 4 месяца назад

    ппц, ни че не понял

  • @bivoh3917
    @bivoh3917 4 месяца назад

    это не с нуля, с нуля то будет если ты напишешь эту библеотеку

    • @developnya
      @developnya  4 месяца назад +1

      какую библиотеку?) тема видоса не сериализация, использование pickle уместно

    • @IvanIvanov-lc5vc
      @IvanIvanov-lc5vc 4 месяца назад +1

      С нуля это на машинном коде

    • @developnya
      @developnya  4 месяца назад

      @@IvanIvanov-lc5vc хахаха, final

  • @sainthentai7763
    @sainthentai7763 4 месяца назад +2

    Чел может смело сменить пол и пойти в вебкам.
    Соррян я в 4 часа ночи просто пытался кое что сделать с ipfs... На винде...

  • @asdfasdfasdfaasdfa
    @asdfasdfasdfaasdfa 4 месяца назад +2

    стыренный код и переведенная статья. доне

    • @developnya
      @developnya  4 месяца назад

      покажи откуда я украл код))))))