Об "обще"употребимых компонентах, на мой взгляд, имеет смысл говорить, помятуя тематическое направление, содержащее задачи одного класса. Да и здесь субъективность может играть большую роль --- из нескольких схожих компонентов А1, А2, ..., Аn, решающих суть одну задачу, один быстрее поймет, применит (и привыкнет) к первому, другой --- к последнему. После же, по свойственной нам лени, более начинает давлеть привычка, нежели здравый смысл. И выходит у одного стандартный (для всех задач класса) --- А1, а у другого --- Аn, хотя бы по сугубой конкретике задачи и выходило наоборот (и компонентность всячески способствует замене).

Экстраполировать же стандартность за пределы тематического направления и вовсе пагубно. Потому как надежда на всемогую всеобще-стандартную библиотеку непосредственно отучает человека от его главной работы --- думать, подходя к задаче со тчащнием о каждой детали. Умные люди уже давно сказали --- грамотная постановка задачи --- половина решения. Но как можно точно понять задачу, опуская детали?...

Те же списки --- в одном месте могут быть так длинны, что хранить их придётся во внешней памяти, а в другом будет довольно фиксированной максимальной длины с хранением в статическом блоке памяти (в массиве, указатель = индекс).