awesome-everything EN
↑ Обратно к восхождению

Базовый CS с нуля

Данные в памяти: тест на свободное вспоминание

Суть Подсказки на свободное вспоминание по всему юниту. Сначала ответь своими словами, затем открой модельный ответ и сравни.
Высота — путь к senior
НольJuniorMiddleSenior
Ты на middle-высоте — в небе
◷ 13 min

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

Цель

Восстанови костяк юнита, не подглядывая: почему array contiguous и из равных ячеек, как индекс становится адресом, почему доступ константный, чем отличается объект и почему reference превращают вложенные данные в graph of cells.

Вспомните перед уходом
  1. 01
    Какова форма array в памяти и почему все ячейки должны быть одного размера?
  2. 02
    Дай формулу адреса элемента i и назови каждую часть.
  3. 03
    Почему первый элемент имеет index 0, а не index 1?
  4. 04
    Почему доступ к любому элементу — константное время и что это сломало бы?
  5. 05
    Чем объект отличается от array и почему порядок полей объекта не важен?
  6. 06
    Как array может хранить сотню объектов разного размера и сохранять сетку из равных ячеек?
Итог

Если ты смог восстановить каждый ответ по памяти, у тебя есть костяк юнита: array — contiguous-ряд из равных ячеек; индекс становится адресом через base + i x element_size, поэтому index 0 первый и поэтому доступ константный; объект достаёт значения по имени, так что порядок полей не важен; а reference позволяют сетке фиксированного размера указывать на объекты переменного размера, превращая любую вложенную структуру в graph of cells, связанный адресами.

Продолжить восхождение ↑Данные в памяти: чтение кода и раскладки
хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources2
expand
  1. 01
  2. 02

Trademarks belong to their respective owners. Editorial reference only.