Estrutura de Dados e algoritmos não é algo que se pergunte "se vale a pena" é matéria obrigatória para quem quer se tornar um bom programador.
Seguinte, em linguagens de alto nível como python3 // cpp algumas dessas estruturas já vem declaradas. Como no caso do Sorting e do Hash table(que você conhece como algoritmo).
Mas tem várias estruturas que podem otimizar ao maximo seu código que não foram declarados:
- Stack
- Linked List
- Queue
- Trees
- Heaps
Por exemplo, tu quer fazer o cadastro de 10.000 pessoas simultâneas no dia de pico de uma black friday, utilizando apenas async//await tu pode até achar uma solução temporária mas a mágica do sistema não quebrar seria alocar recursos na implementação de uma fila, onde um worker escreveria o usuário no banco de dados, enquanto outro worker colocaria mais pessoas na fila.
O mesmo vale para as outras estruturas