What underlying data structure is used to store wallet address on the blockchain?
Bitcoin's blockchain does not track total amounts of bitcoin owned by individual addresses, only the changes in amounts (i.e. transactions between addresses).

To know the total amount of bitcoin a single address owns, wallet software must search the blockchain for transactions that reference that address. Then, using those transactions, the wallet software must sum the ins and outs of bitcoin coming from and going to that address.