C++ Logo

sg20

Advanced search

Re: [isocpp-sg20] Education references for teaching data structures implementation in C++

From: Bjarne Stroustrup <bjarne_at_[hidden]>
Date: Sun, 24 May 2026 16:53:09 -0400
In particular, I find that most students (good 3rd year and later
students) don't immediately look at the cache effects of data structures
and make statements about efficiency without first measuring (so I
briefly say something about that)

On 5/24/2026 4:47 PM, Ville Voutilainen wrote:
> On Sun, 24 May 2026 at 23:03, Bjarne Stroustrup via SG20
> <sg20_at_[hidden]> wrote:
>>
>> On 5/24/2026 3:34 PM, JOSE DANIEL GARCIA SANCHEZ via SG20 wrote:
>>> Dear all,
>>>
>>> I have been asked by a colleague about good teaching references
>>> (preferrrably books) for teaching basic implementation of data
>>> structures in C++.
>>>
>>> Any recommendations?
>> Sorry no. I have never taught datastructures and I'm not up on what
>> materials people use for that. From what I have seem from students, I'm
>> rather suspicious on the quality of those courses.
> I have no idea either. I've never seen any decent materials for it,
> and wouldn't know where to find them.
>
> Not that I've ever needed to write a custom container, for example, either.
>
> I do understand the need for such. Being able to provide
> implementations that have various different trade-offs
> is certainly useful in all sorts of high-performance scenarios, which
> I luckily have never had to deal with. :)
>
> I wonder how the LLM suggestions of
>
> https://www.amazon.co.uk/Data-Structures-Algorithm-Analysis-United/dp/032144146X
>
> and
>
> https://www.amazon.co.uk/Programming-Program-Design-Including-Structures/dp/1133526322
>
> and
>
> https://www.amazon.co.uk/Problem-Solving-C-Walter-Savitch/dp/0134448286
>
> fare. The middle one is ancient, but I have no idea whether that matters.
>
> I think the challenge here is to keep the students awake. I don't
> think talking about how to implement what std::vector and std::list
> do will do that. They would probably stay awake for 10 minutes when
> talking about the difference between std::list and std::forward_list,
> but something more interesting with a reasonable rationale would be needed.

Received on 2026-05-24 20:53:12