170 похожих чатов

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

память под новый массив в случае нехватки физического размера массива? И массив с каким размером создаётся при нехватке физического размера в другом?

13 ответов

16 просмотров
Murad- Автор вопроса

знает кто?

Murad- Автор вопроса

я не хочу)) просто можно ли это вообще, вот что интересно

Murad
я не хочу)) просто можно ли это вообще, вот что ин...

В питоне без лютых извращений либо сишного модуля — нет.

Murad- Автор вопроса
evle
В питоне без лютых извращений либо сишного модуля ...

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

Murad
понятно, спасибо, с другой стороны, ведь алгоритм ...

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

Murad
понятно, спасибо, с другой стороны, ведь алгоритм ...

Не уверен насчёт 2-3 раз. Насколько помню, там для маленьких списков быстрый рост, а потом пропорционально (типа *9/8) или что-то такое. Где-то была статья с алгоритмом.

Murad- Автор вопроса
evle
Не уверен насчёт 2-3 раз. Насколько помню, там для...

просто мне кажется, что эта тема важная

Murad
просто мне кажется, что эта тема важная

Смотря для чего. Как пользователя тебя чаще всего это волновать не должно. Для каких-то очень хитрых оптимизаций разве что полезно знать.

Murad- Автор вопроса

ну, раз взялся типо за алгоритмы и структуры, то лучше уж и это изучить

Murad
ну, раз взялся типо за алгоритмы и структуры, то л...

Да, в целом тот факт что под список выделяются куски памяти несколько больше, чем там элементов и размер наращивается постепенно копированием — знать надо. Как именно это делается — опционально. Это деталь реализации и основываться как-то на ней нельзя.

Murad- Автор вопроса
Alex
Ну список реализован как динамически расширяемый м...

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

Murad
как раз в следующем видео про это уже говорится) р...

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

Murad
как раз в следующем видео про это уже говорится) р...

Называть "ссылки на объекты" одним типом — это несколько непродуктивно в плане питона. Таки списки действительно могут содержать значения любого типа, но часто если там оказались сильно разные типы — это ошибка проектирования.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта