Queue is used for load balancing
Public Group is solely used for sharing
Queue is a feature available to salesforce.com users that allows you to integrate prospect assignments with your current salesforce.com workflow. Rather than assigning to a specific user, you can choose to assign leads to a salesforce.com queue and then use your CRM workflow or manual method of distributing leads to sales representatives.
Public Group is kind of team or group of related users; this will help you to share the data.
Queue can be created for Custom objects and for Case, Lead and Knowledge Article Version.
Public group created can be used across any objects.