Size: a a a

2020 November 21

S

Slach in #UWDC2021
Vik
я не о том, а что зачастую там где хочется пихнуть класический массив из другого языка, в го лучше использовать мап
;))) хмм... ну я не знаю даже
"классических массивов" в python и в php не существует
в первом это linked list во втором вообще помесь хешмапа с линкед листом
в других языках я не знаю, не копался просто в этом

в Pascal и Cи классические массивы были, и с ними умаешься работать тупо преаллокация и отдельно где нибудь длинну хранишь... бегая  в цикле....
источник

V

Vik in #UWDC2021
я классическим именно вторые и отношу
источник

V

Vik in #UWDC2021
хотя давно не читал литературу по программированию, что сейчас считается классикой не ведаю )) может уже и питон классика, а не бейсик, си, паскаль
источник

AE

Alexandr Emelyanov in #UWDC2021
Slach
;))) хмм... ну я не знаю даже
"классических массивов" в python и в php не существует
в первом это linked list во втором вообще помесь хешмапа с линкед листом
в других языках я не знаю, не копался просто в этом

в Pascal и Cи классические массивы были, и с ними умаешься работать тупо преаллокация и отдельно где нибудь длинну хранишь... бегая  в цикле....
Как же скорость и память?)
источник

S

Slach in #UWDC2021
то есть то что в голанг слайсы это удобная "надстройка" над массивами с преаллокацией и capacity , лично меня это вполне устраивает что они не смешивают классические типы данных, которые реально оптимизированы для разных паттернов доступа в фоннеймановской архитектуре и в результате код получается достаточно эффективный  с точки зрения CPU и даже когда он у вас тормозит, то понятно почему
источник

S

Slach in #UWDC2021
Vik
хотя давно не читал литературу по программированию, что сейчас считается классикой не ведаю )) может уже и питон классика, а не бейсик, си, паскаль
ну если классические массивы это Си и Паскаль
то там нет понятия contains как o(1), оно там везде o(n)
источник

AE

Alexandr Emelyanov in #UWDC2021
Slach
ну если классические массивы это Си и Паскаль
то там нет понятия contains как o(1), оно там везде o(n)
Ну о(1) будет только для хэш таблицы, но это совсем далеко от классического массива
источник

S

Slach in #UWDC2021
Alexandr Emelyanov
Ну о(1) будет только для хэш таблицы, но это совсем далеко от классического массива
я запутался
короче, вам тут советуют просто понять какой тип доступа вам нужен
и если вам надо "проверять на нахождение значения в массиве"
и это основной доступ к данным и не требуется итерироваться в порядке вставки
то у вас точно не slice а map

то я очень рад что в стандартной либе нет какой нибудь "универсальной функции для contains в slice"
потому что это весьма неэффективный код =)
источник

AE

Alexandr Emelyanov in #UWDC2021
Slach
я запутался
короче, вам тут советуют просто понять какой тип доступа вам нужен
и если вам надо "проверять на нахождение значения в массиве"
и это основной доступ к данным и не требуется итерироваться в порядке вставки
то у вас точно не slice а map

то я очень рад что в стандартной либе нет какой нибудь "универсальной функции для contains в slice"
потому что это весьма неэффективный код =)
Это да. Но брать мапу, когда достаточно массива тоже не очень)
источник

AE

Alexandr Emelyanov in #UWDC2021
В пхп и питоне линкедлист реально самая распространенная реализация листа?
источник

AE

Alexandr Emelyanov in #UWDC2021
Или вообще единственная?
источник

GD

George Drak in #UWDC2021
Ну в пхп встроенная коллекция это array, который на самом деле хэшмап, но при этом ведущий себя немного по разному если ключи числовые и если нет
источник

V

Vik in #UWDC2021
Slach
я запутался
короче, вам тут советуют просто понять какой тип доступа вам нужен
и если вам надо "проверять на нахождение значения в массиве"
и это основной доступ к данным и не требуется итерироваться в порядке вставки
то у вас точно не slice а map

то я очень рад что в стандартной либе нет какой нибудь "универсальной функции для contains в slice"
потому что это весьма неэффективный код =)
вот! как с языка снял )))
источник

S

Slach in #UWDC2021
George Drak
Ну в пхп встроенная коллекция это array, который на самом деле хэшмап, но при этом ведущий себя немного по разному если ключи числовые и если нет
и на уровне zval контейнера это реализуется как linked list если я не ошибаюсь
источник

S

Slach in #UWDC2021
Alexandr Emelyanov
В пхп и питоне линкедлист реально самая распространенная реализация листа?
в питоне я напутал. там листы реально как массивы
просто элемент слайса это указатель на "объект"
и оно постоянно переаллоцируется
источник

AE

Alexandr Emelyanov in #UWDC2021
George Drak
Ну в пхп встроенная коллекция это array, который на самом деле хэшмап, но при этом ведущий себя немного по разному если ключи числовые и если нет
Мдэ...
источник

S

Slach in #UWDC2021
а как вы мапу итерировать будете "в порядке цифрового индекса"?
источник

AE

Alexandr Emelyanov in #UWDC2021
Slach
в питоне я напутал. там листы реально как массивы
просто элемент слайса это указатель на "объект"
и оно постоянно переаллоцируется
Норм
источник

AE

Alexandr Emelyanov in #UWDC2021
Slach
а как вы мапу итерировать будете "в порядке цифрового индекса"?
Не, я про реализацию массива как хэшмапы
источник

AE

Alexandr Emelyanov in #UWDC2021
Slach
и на уровне zval контейнера это реализуется как linked list если я не ошибаюсь
Linked list такое себе решение на самом деле
источник