MATLAB: Do cell arrays take up so much more memory than arrays

MATLAB

Why do cell arrays take up so much more memory than arrays?
>> v1 = 1;
>> v2 = {1};
>> whos
Name Size Bytes Class Attributes
v1 1x1 8 double
v2 1x1 120 cell

Best Answer

The reason that cell arrays take up so much more memory is because they require a lot more overhead to store metadata about each element in the cell array, since each element could have a different type, size, etc.
Please refer to the following link for more information on strategies for efficient memory usage, particularly for cell arrays that have overhead.