I'll give an answer in two parts:
- how can one assign bias to nodes
- Should bias be added to both hidden and output layers
How can one assign bias to nodes? Both of the situations you depict are identical. Although in the first drawing the bias is always one, the arrows to the nodes will be assigned a coefficient in the model: resulting in different biases for each node. Hence, there is no difference in this sense between your first and second drawing.
Should bias be added to both hidden and output layers? Normally bias is added to all layers, but this is not a principled choice: it just results in the most flexible model. Removing bias from the hidden layers might work out. In this case you would have to show that this model with less parameters performs as well or better as the model with the extra bias in the hidden layer.
In general a sparser model is seen as a better model. In the case of neural networks though is not that common to remove parameters for reasons of sparsity. Shrinkage is more common way to make your nn model sparser.