Well, it's only efficient if the component which renders each element in the list gets a stable key AND is React.memo() AND the props passed to the components do not make the React.memo() pointless.
For example the following will not be particularly efficient, because a fresh callback is passed to the component on each render.
For example the following will not be particularly efficient, because a fresh callback is passed to the component on each render.