Sim, é possível.
Você pode ter tanto um List de List, quando um Map com um List, caso queira referenciar por nome. Por exemplo:
List<List<String>> estradas = new ArrayList<List<String>>();
estradas.add(new ArrayList<String>());
estradas.add(new ArrayList<String>());
estradas.get(0).add("BR116");
estradas.get(0).add("BR114");
estradas.get(1).add("BR116");
Entretanto, eu recomendo que você crie uma classe chamada “Cidade” e uma classe “Estrada”. Então, coloque um List<Estrada> dentro da sua classe Cidade. E por fim, crie o List<Cidade>.
Se você estiver fazendo um programa similar ao Google Maps, essa estrutura não é mais adequada. O ideal seria usar um grafo, possivelmente implementado com uma lista de adjacência. Também usaria Lists, mas a forma que você as organiza é um pouco diferente. Aí será especialmente importante ter uma classe para as Estradas, já que você irá adicionar informações como quilometragem, pedágios, direção, etc.