//reordeno el array de mayor a menor
datos.sort((a,b) => (a.Cantidad < b.Cantidad) ? 1 : ((b.Cantidad < a.Cantidad) ? -1 : 0))

//Elimino los repetidos
let hash = {};
let array = datos.filter(o => hash[o.id] ? false : hash[o.id] = true);
//alert(JSON.stringify(array))
setDatosProcesados(array)