The problem is in fact easier than graph isomorphism for a directed graph when the weights are all distinct. I wonder if this was the original intent of the question.
For distinct-weighted directed graphs A and B with same number of vertices $n$ and edges $e$, do the following:
- Sort the edge weights of A and B in decreasing order.
- Maintain a labeling $\theta$ of vertices of graph B, initialized to the empty set $\phi$. We will fill this labeling in our algorithm and check if we get any contradictory labels. Let us call the label of a vertex $u$ under the labelling $\theta$, $\theta(u)$
- iterate over edges $e_i=(u_i, v_i)$ in A and corresponding edge $e_i' = (u_i', v_i')$ in B in the sorted order
- if $weight(e_i) \neq weight(e_i')$ then graphs are not isomorphic. Terminate
- if $\theta(u_i') == \phi$, then $\theta := \theta\ \cup (u_i', u_i)$
- if $\theta(v_i') == \phi$, then $\theta := \theta\ \cup (v_i', v_i)$
- if $\theta(u_i') \neq \phi$ and $\theta(u_i') \neq u_i$ then graphs are not isomorphic. Terminate
- if $\theta(v_i') \neq \phi$ and $\theta(v_i') \neq v_i$ then graphs are not isomorphic. Terminate
- if not terminated yet, then graphs are isomorphic. Terminate and enjoy a cup of tea :-)
The running time is $O(e.log(e))$ for sorting edges and $e$ for the single pass over the edges.
The problem is not as useless as it sounds. For example, directed, distinct edge-weighted graph isomorphism can be used to find out if two given Bayesian Networks are isomorphic or not. This can be used to transfer knowledge from one domain to another.
EDIT: I took a look at some comments by the OP and it looks like he is talking about a probabilistic case. So my answer does not apply. I'll leave it here for reference.