第五周作业——Dijkstra算法的实现

作业要求: 对加权图(tinyEWD.txtmediumEWD.txt),计算从顶点0出发到其他顶点的最短路径,要求输出其从顶点0到每个顶点的路径,以及相应的路径距离。类名GraphDijkstra




请参考:DijkstraSP ,相关介绍:BFS (还有其他关联代码相信大家能刨出来吧), 代码如下:

public class DijkstraSP {
    private double[] distTo;          // distTo[v] = distance  of shortest s->v path
    private DirectedEdge[] edgeTo;    // edgeTo[v] = last edge on shortest s->v path
    private IndexMinPQ<Double> pq;    // priority queue of vertices

    /**
     * Computes a shortest paths tree from <tt>s</tt> to every other vertex in
     * the edge-weighted digraph <tt>G</tt>.
     * @param G the edge-weighted digraph
     * @param s the source vertex
     * @throws IllegalArgumentException if an edge weight is negative
     * @throws IllegalArgumentException unless 0 ≤ <tt>s</tt> ≤ <tt>V</tt> - 1
     */
    public DijkstraSP(EdgeWeightedDigraph G, int s) {
        for (DirectedEdge e : G.edges()) {
            if (e.weight() < 0)
                throw new IllegalArgumentException("edge " + e + " has negative weight");
        }

        distTo = new double[G.V()];
        edgeTo = new DirectedEdge[G.V()];
        for (int v = 0; v < G.V(); v++)
            distTo[v] = Double.POSITIVE_INFINITY;
        distTo[s] = 0.0;

        // relax vertices in order of distance from s
        pq = new IndexMinPQ<Double>(G.V());
        pq.insert(s, distTo[s]);
        while (!pq.isEmpty()) {
            int v = pq.delMin();
            for (DirectedEdge e : G.adj(v))
                relax(e);
        }

        // check optimality conditions
        assert check(G, s);
    }

    // relax edge e and update pq if changed
    private void relax(DirectedEdge e) {
        int v = e.from(), w = e.to();
        if (distTo[w] > distTo[v] + e.weight()) {
            distTo[w] = distTo[v] + e.weight();
            edgeTo[w] = e;
            if (pq.contains(w)) pq.decreaseKey(w, distTo[w]);
            else                pq.insert(w, distTo[w]);
        }
    }

    /**
     * Returns the length of a shortest path from the source vertex <tt>s</tt> to vertex <tt>v</tt>.
     * @param v the destination vertex
     * @return the length of a shortest path from the source vertex <tt>s</tt> to vertex <tt>v</tt>;
     *    <tt>Double.POSITIVE_INFINITY</tt> if no such path
     */
    public double distTo(int v) {
        return distTo[v];
    }

    /**
     * Is there a path from the source vertex <tt>s</tt> to vertex <tt>v</tt>?
     * @param v the destination vertex
     * @return <tt>true</tt> if there is a path from the source vertex
     *    <tt>s</tt> to vertex <tt>v</tt>, and <tt>false</tt> otherwise
     */
    public boolean hasPathTo(int v) {
        return distTo[v] < Double.POSITIVE_INFINITY;
    }

    /**
     * Returns a shortest path from the source vertex <tt>s</tt> to vertex <tt>v</tt>.
     * @param v the destination vertex
     * @return a shortest path from the source vertex <tt>s</tt> to vertex <tt>v</tt>
     *    as an iterable of edges, and <tt>null</tt> if no such path
     */
    public Iterable<DirectedEdge> pathTo(int v) {
        if (!hasPathTo(v)) return null;
        Stack<DirectedEdge> path = new Stack<DirectedEdge>();
        for (DirectedEdge e = edgeTo[v]; e != null; e = edgeTo[e.from()]) {
            path.push(e);
        }
        return path;
    }


    // check optimality conditions:
    // (i) for all edges e:            distTo[e.to()] <= distTo[e.from()] + e.weight()
    // (ii) for all edge e on the SPT: distTo[e.to()] == distTo[e.from()] + e.weight()
    private boolean check(EdgeWeightedDigraph G, int s) {

        // check that edge weights are nonnegative
        for (DirectedEdge e : G.edges()) {
            if (e.weight() < 0) {
                System.err.println("negative edge weight detected");
                return false;
            }
        }

        // check that distTo[v] and edgeTo[v] are consistent
        if (distTo[s] != 0.0 || edgeTo[s] != null) {
            System.err.println("distTo[s] and edgeTo[s] inconsistent");
            return false;
        }
        for (int v = 0; v < G.V(); v++) {
            if (v == s) continue;
            if (edgeTo[v] == null && distTo[v] != Double.POSITIVE_INFINITY) {
                System.err.println("distTo[] and edgeTo[] inconsistent");
                return false;
            }
        }

        // check that all edges e = v->w satisfy distTo[w] <= distTo[v] + e.weight()
        for (int v = 0; v < G.V(); v++) {
            for (DirectedEdge e : G.adj(v)) {
                int w = e.to();
                if (distTo[v] + e.weight() < distTo[w]) {
                    System.err.println("edge " + e + " not relaxed");
                    return false;
                }
            }
        }

        // check that all edges e = v->w on SPT satisfy distTo[w] == distTo[v] + e.weight()
        for (int w = 0; w < G.V(); w++) {
            if (edgeTo[w] == null) continue;
            DirectedEdge e = edgeTo[w];
            int v = e.from();
            if (w != e.to()) return false;
            if (distTo[v] + e.weight() != distTo[w]) {
                System.err.println("edge " + e + " on shortest path not tight");
                return false;
            }
        }
        return true;
    }
}


测试代码:

    /**
     * Unit tests the <tt>DijkstraSP</tt> data type.
     */
    public static void main(String[] args) {
    	//In in = new In(args[0]);
        In in = new In("D:/graph/tinyEWD.txt");
        EdgeWeightedDigraph G = new EdgeWeightedDigraph(in);
        //int s = Integer.parseInt(args[1]);
        int s = 0;

        // compute shortest paths
        DijkstraSP sp = new DijkstraSP(G, s);


        // print shortest path
        for (int t = 0; t < G.V(); t++) {
            if (sp.hasPathTo(t)) {
                StdOut.printf("%d to %d (%.2f)  ", s, t, sp.distTo(t));
                if (sp.hasPathTo(t)) {
                    for (DirectedEdge e : sp.pathTo(t)) {
                        StdOut.print(e + "   ");
                    }
                }
                StdOut.println();
            }
            else {
                StdOut.printf("%d to %d         no path\n", s, t);
            }
        }
    }



运行结果:

对加权图(tinyEWD.txt):

0 to 0 (0.00)  
0 to 1 (1.05)  5->1  0.32   4->5  0.35   0->4  0.38   
0 to 2 (0.26)  0->2  0.26   
0 to 3 (0.99)  7->3  0.39   2->7  0.34   0->2  0.26   
0 to 4 (0.38)  0->4  0.38   
0 to 5 (0.73)  4->5  0.35   0->4  0.38   
0 to 6 (1.51)  3->6  0.52   7->3  0.39   2->7  0.34   0->2  0.26   
0 to 7 (0.60)  2->7  0.34   0->2  0.26   

对加权图(mediumEWD.txt):

0 to 0 (0.00)  
0 to 1 (0.71)  107->1  0.07   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 2 (0.65)  42->2  0.11   181->42  0.07   65->181  0.11   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 3 (0.46)  45->3  0.12   104->45  0.11   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 4 (0.42)  77->4  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 5 (0.32)  32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 6 (0.87)  166->6  0.07   14->166  0.08   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 7 (0.43)  197->7  0.07   118->197  0.07   165->118  0.08   191->165  0.11   0->191  0.11   
0 to 8 (0.71)  210->8  0.11   205->210  0.08   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 9 (0.20)  58->9  0.10   0->58  0.10   
0 to 10 (0.90)  246->10  0.10   152->246  0.10   210->152  0.11   205->210  0.08   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 11 (0.74)  207->11  0.11   205->207  0.11   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 12 (0.72)  242->12  0.08   90->242  0.10   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 13 (0.84)  100->13  0.03   70->100  0.11   214->70  0.11   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 14 (0.72)  86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 15 (0.06)  0->15  0.06   
0 to 16 (0.92)  166->16  0.11   14->166  0.08   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 17 (0.80)  170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 18 (0.66)  86->18  0.03   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 19 (0.77)  70->19  0.07   214->70  0.11   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 20 (0.81)  194->20  0.09   87->194  0.08   136->87  0.10   55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 21 (0.44)  65->21  0.08   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 22 (0.98)  120->22  0.06   229->120  0.08   170->229  0.11   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 23 (0.17)  58->23  0.07   0->58  0.10   
0 to 24 (0.10)  0->24  0.10   
0 to 25 (0.79)  111->25  0.05   61->111  0.07   234->61  0.11   112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 26 (0.34)  102->26  0.04   32->102  0.09   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 27 (0.43)  138->27  0.08   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 28 (0.66)  242->28  0.03   90->242  0.10   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 29 (1.04)  227->29  0.10   81->227  0.08   17->81  0.06   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 30 (0.68)  219->30  0.11   205->219  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 31 (0.58)  37->31  0.09   76->37  0.03   45->76  0.11   104->45  0.11   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 32 (0.21)  93->32  0.07   44->93  0.07   0->44  0.06   
0 to 33 (0.18)  114->33  0.09   0->114  0.10   
0 to 34 (1.01)  120->34  0.09   229->120  0.08   170->229  0.11   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 35 (0.71)  141->35  0.11   135->141  0.07   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 36 (0.79)  35->36  0.09   141->35  0.11   135->141  0.07   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 37 (0.48)  76->37  0.03   45->76  0.11   104->45  0.11   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 38 (1.15)  109->38  0.09   146->109  0.08   134->146  0.07   17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 39 (0.15)  15->39  0.09   0->15  0.06   
0 to 40 (0.82)  194->40  0.11   87->194  0.08   136->87  0.10   55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 41 (0.77)  198->41  0.10   242->198  0.03   90->242  0.10   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 42 (0.54)  181->42  0.07   65->181  0.11   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 43 (0.65)  221->43  0.04   205->221  0.09   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 44 (0.06)  0->44  0.06   
0 to 45 (0.34)  104->45  0.11   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 46 (0.92)  186->46  0.08   72->186  0.09   107->72  0.12   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 47 (1.06)  218->47  0.03   227->218  0.09   81->227  0.08   17->81  0.06   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 48 (0.25)  50->48  0.10   59->50  0.04   0->59  0.11   
0 to 49 (0.05)  0->49  0.05   
0 to 50 (0.15)  59->50  0.04   0->59  0.11   
0 to 51 (0.69)  110->51  0.11   205->110  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 52 (0.23)  93->52  0.10   44->93  0.07   0->44  0.06   
0 to 53 (0.93)  229->53  0.09   170->229  0.11   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 54 (0.98)  147->54  0.07   129->147  0.09   14->129  0.11   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 55 (0.43)  5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 56 (0.97)  120->56  0.05   229->120  0.08   170->229  0.11   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 57 (0.37)  208->57  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 58 (0.10)  0->58  0.10   
0 to 59 (0.11)  0->59  0.11   
0 to 60 (0.82)  111->60  0.09   61->111  0.07   234->61  0.11   112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 61 (0.66)  234->61  0.11   112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 62 (0.45)  138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 63 (0.88)  25->63  0.09   111->25  0.05   61->111  0.07   234->61  0.11   112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 64 (1.00)  134->64  0.09   17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 65 (0.36)  208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 66 (0.17)  149->66  0.08   0->149  0.10   
0 to 67 (0.37)  217->67  0.05   104->217  0.10   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 68 (0.12)  0->68  0.12   
0 to 69 (0.58)  128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 70 (0.70)  214->70  0.11   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 71 (0.43)  65->71  0.07   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 72 (0.75)  107->72  0.12   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 73 (1.03)  120->73  0.11   229->120  0.08   170->229  0.11   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 74 (1.15)  183->74  0.05   64->183  0.10   134->64  0.09   17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 75 (0.78)  194->75  0.06   87->194  0.08   136->87  0.10   55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 76 (0.45)  45->76  0.11   104->45  0.11   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 77 (0.32)  187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 78 (0.43)  77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 79 (0.69)  214->79  0.09   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 80 (0.07)  0->80  0.07   
0 to 81 (0.86)  17->81  0.06   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 82 (0.73)  207->82  0.10   205->207  0.11   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 83 (0.31)  104->83  0.09   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 84 (0.78)  70->84  0.08   214->70  0.11   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 85 (0.77)  82->85  0.04   207->82  0.10   205->207  0.11   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 86 (0.63)  135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 87 (0.63)  136->87  0.10   55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 88 (0.78)  35->88  0.07   141->35  0.11   135->141  0.07   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 89 (0.76)  61->89  0.09   234->61  0.11   112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 90 (0.54)  62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 91 (1.00)  134->91  0.10   17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 92 (0.41)  172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 93 (0.13)  44->93  0.07   0->44  0.06   
0 to 94 (0.67)  141->94  0.08   135->141  0.07   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 95 (0.43)  83->95  0.12   104->83  0.09   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 96 (0.87)  25->96  0.09   111->25  0.05   61->111  0.07   234->61  0.11   112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 97 (0.08)  0->97  0.08   
0 to 98 (0.86)  88->98  0.09   35->88  0.07   141->35  0.11   135->141  0.07   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 99 (0.94)  129->99  0.11   14->129  0.11   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 100 (0.82)  70->100  0.11   214->70  0.11   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 101 (0.53)  125->101  0.11   197->125  0.06   118->197  0.07   165->118  0.08   191->165  0.11   0->191  0.11   
0 to 102 (0.30)  32->102  0.09   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 103 (0.82)  19->103  0.05   70->19  0.07   214->70  0.11   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 104 (0.23)  248->104  0.07   97->248  0.09   0->97  0.08   
0 to 105 (0.84)  143->105  0.07   30->143  0.09   219->30  0.11   205->219  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 106 (0.84)  143->106  0.07   30->143  0.09   219->30  0.11   205->219  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 107 (0.64)  69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 108 (0.58)  181->108  0.11   65->181  0.11   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 109 (1.06)  146->109  0.08   134->146  0.07   17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 110 (0.58)  205->110  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 111 (0.73)  61->111  0.07   234->61  0.11   112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 112 (0.47)  55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 113 (0.65)  90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 114 (0.10)  0->114  0.10   
0 to 115 (0.49)  76->115  0.04   45->76  0.11   104->45  0.11   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 116 (0.80)  194->116  0.09   87->194  0.08   136->87  0.10   55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 117 (0.96)  6->117  0.09   166->6  0.07   14->166  0.08   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 118 (0.30)  165->118  0.08   191->165  0.11   0->191  0.11   
0 to 119 (0.94)  81->119  0.08   17->81  0.06   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 120 (0.92)  229->120  0.08   170->229  0.11   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 121 (0.71)  113->121  0.05   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 122 (0.52)  92->122  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 123 (0.91)  246->123  0.10   152->246  0.10   210->152  0.11   205->210  0.08   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 124 (0.27)  165->124  0.05   191->165  0.11   0->191  0.11   
0 to 125 (0.42)  197->125  0.06   118->197  0.07   165->118  0.08   191->165  0.11   0->191  0.11   
0 to 126 (1.15)  109->126  0.09   146->109  0.08   134->146  0.07   17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 127 (0.86)  89->127  0.11   61->89  0.09   234->61  0.11   112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 128 (0.46)  78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 129 (0.83)  14->129  0.11   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 130 (0.67)  87->130  0.04   136->87  0.10   55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 131 (0.83)  143->131  0.06   30->143  0.09   219->30  0.11   205->219  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 132 (0.41)  171->132  0.07   165->171  0.12   191->165  0.11   0->191  0.11   
0 to 133 (0.79)  14->133  0.07   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 134 (0.91)  17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 135 (0.53)  230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 136 (0.53)  55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 137 (1.01)  134->137  0.10   17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 138 (0.36)  226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 139 (0.52)  92->139  0.11   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 140 (0.96)  147->140  0.05   129->147  0.09   14->129  0.11   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 141 (0.59)  135->141  0.07   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 142 (0.26)  165->142  0.05   191->165  0.11   0->191  0.11   
0 to 143 (0.77)  30->143  0.09   219->30  0.11   205->219  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 144 (0.15)  97->144  0.07   0->97  0.08   
0 to 145 (1.00)  119->145  0.05   81->119  0.08   17->81  0.06   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 146 (0.97)  134->146  0.07   17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 147 (0.91)  129->147  0.09   14->129  0.11   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 148 (0.43)  57->148  0.06   208->57  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 149 (0.10)  0->149  0.10   
0 to 150 (0.82)  1->150  0.11   107->1  0.07   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 151 (0.26)  231->151  0.09   44->231  0.10   0->44  0.06   
0 to 152 (0.71)  210->152  0.11   205->210  0.08   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 153 (0.50)  76->153  0.04   45->76  0.11   104->45  0.11   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 154 (0.36)  195->154  0.11   9->195  0.05   58->9  0.10   0->58  0.10   
0 to 155 (0.26)  165->155  0.05   191->165  0.11   0->191  0.11   
0 to 156 (0.57)  205->156  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 157 (0.43)  57->157  0.07   208->57  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 158 (0.75)  113->158  0.10   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 159 (0.51)  55->159  0.08   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 160 (0.12)  0->160  0.12   
0 to 161 (0.89)  177->161  0.07   72->177  0.06   107->72  0.12   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 162 (0.96)  192->162  0.09   19->192  0.09   70->19  0.07   214->70  0.11   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 163 (0.09)  0->163  0.09   
0 to 164 (0.79)  194->164  0.07   87->194  0.08   136->87  0.10   55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 165 (0.21)  191->165  0.11   0->191  0.11   
0 to 166 (0.80)  14->166  0.08   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 167 (1.05)  117->167  0.09   6->117  0.09   166->6  0.07   14->166  0.08   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 168 (0.17)  44->168  0.10   0->44  0.06   
0 to 169 (0.88)  189->169  0.09   72->189  0.04   107->72  0.12   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 170 (0.73)  113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 171 (0.33)  165->171  0.12   191->165  0.11   0->191  0.11   
0 to 172 (0.31)  165->172  0.10   191->165  0.11   0->191  0.11   
0 to 173 (0.58)  128->173  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 174 (0.79)  70->174  0.09   214->70  0.11   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 175 (0.84)  11->175  0.10   207->11  0.11   205->207  0.11   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 176 (0.09)  0->176  0.09   
0 to 177 (0.82)  72->177  0.06   107->72  0.12   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 178 (0.92)  98->178  0.05   88->98  0.09   35->88  0.07   141->35  0.11   135->141  0.07   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 179 (0.75)  212->179  0.09   219->212  0.08   205->219  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 180 (0.23)  165->180  0.02   191->165  0.11   0->191  0.11   
0 to 181 (0.47)  65->181  0.11   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 182 (0.74)  113->182  0.09   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 183 (1.10)  64->183  0.10   134->64  0.09   17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 184 (0.40)  57->184  0.03   208->57  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 185 (0.15)  97->185  0.08   0->97  0.08   
0 to 186 (0.85)  72->186  0.09   107->72  0.12   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 187 (0.21)  93->187  0.08   44->93  0.07   0->44  0.06   
0 to 188 (0.40)  65->188  0.04   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 189 (0.79)  72->189  0.04   107->72  0.12   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 190 (0.86)  164->190  0.07   194->164  0.07   87->194  0.08   136->87  0.10   55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 191 (0.11)  0->191  0.11   
0 to 192 (0.86)  19->192  0.09   70->19  0.07   214->70  0.11   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 193 (0.84)  143->193  0.07   30->143  0.09   219->30  0.11   205->219  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 194 (0.72)  87->194  0.08   136->87  0.10   55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 195 (0.25)  9->195  0.05   58->9  0.10   0->58  0.10   
0 to 196 (0.56)  101->196  0.03   125->101  0.11   197->125  0.06   118->197  0.07   165->118  0.08   191->165  0.11   0->191  0.11   
0 to 197 (0.36)  118->197  0.07   165->118  0.08   191->165  0.11   0->191  0.11   
0 to 198 (0.67)  242->198  0.03   90->242  0.10   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 199 (0.86)  25->199  0.08   111->25  0.05   61->111  0.07   234->61  0.11   112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 200 (0.72)  107->200  0.08   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 201 (0.22)  185->201  0.07   97->185  0.08   0->97  0.08   
0 to 202 (0.05)  0->202  0.05   
0 to 203 (0.75)  107->203  0.12   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 204 (0.05)  0->204  0.05   
0 to 205 (0.52)  92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 206 (0.20)  24->206  0.10   0->24  0.10   
0 to 207 (0.63)  205->207  0.11   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 208 (0.26)  231->208  0.09   44->231  0.10   0->44  0.06   
0 to 209 (0.10)  0->209  0.10   
0 to 210 (0.60)  205->210  0.08   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 211 (0.08)  0->211  0.08   
0 to 212 (0.65)  219->212  0.08   205->219  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 213 (0.26)  165->213  0.05   191->165  0.11   0->191  0.11   
0 to 214 (0.59)  205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 215 (1.11)  64->215  0.11   134->64  0.09   17->134  0.10   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 216 (0.32)  48->216  0.08   50->48  0.10   59->50  0.04   0->59  0.11   
0 to 217 (0.33)  104->217  0.10   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 218 (1.03)  227->218  0.09   81->227  0.08   17->81  0.06   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 219 (0.57)  205->219  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 220 (0.82)  1->220  0.10   107->1  0.07   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 221 (0.61)  205->221  0.09   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 222 (0.08)  0->222  0.08   
0 to 223 (0.70)  113->223  0.05   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 224 (1.07)  29->224  0.03   227->29  0.10   81->227  0.08   17->81  0.06   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 225 (0.02)  0->225  0.02   
0 to 226 (0.24)  93->226  0.11   44->93  0.07   0->44  0.06   
0 to 227 (0.94)  81->227  0.08   17->81  0.06   170->17  0.08   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 228 (0.54)  3->228  0.08   45->3  0.12   104->45  0.11   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 229 (0.84)  170->229  0.11   113->170  0.07   90->113  0.12   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 230 (0.41)  65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 231 (0.17)  44->231  0.10   0->44  0.06   
0 to 232 (0.26)  185->232  0.10   97->185  0.08   0->97  0.08   
0 to 233 (0.45)  138->233  0.10   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 234 (0.55)  112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 235 (0.36)  213->235  0.09   165->213  0.05   191->165  0.11   0->191  0.11   
0 to 236 (0.90)  166->236  0.09   14->166  0.08   86->14  0.09   135->86  0.10   230->135  0.11   65->230  0.05   208->65  0.11   231->208  0.09   44->231  0.10   0->44  0.06   
0 to 237 (0.93)  63->237  0.05   25->63  0.09   111->25  0.05   61->111  0.07   234->61  0.11   112->234  0.08   55->112  0.05   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 238 (0.36)  195->238  0.11   9->195  0.05   58->9  0.10   0->58  0.10   
0 to 239 (0.45)  78->239  0.02   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   
0 to 240 (0.38)  138->240  0.02   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 241 (0.53)  3->241  0.07   45->3  0.12   104->45  0.11   248->104  0.07   97->248  0.09   0->97  0.08   
0 to 242 (0.64)  90->242  0.10   62->90  0.09   138->62  0.09   226->138  0.11   93->226  0.11   44->93  0.07   0->44  0.06   
0 to 243 (0.86)  84->243  0.07   70->84  0.08   214->70  0.11   205->214  0.07   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 244 (0.70)  212->244  0.04   219->212  0.08   205->219  0.05   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 245 (0.34)  195->245  0.09   9->195  0.05   58->9  0.10   0->58  0.10   
0 to 246 (0.80)  152->246  0.10   210->152  0.11   205->210  0.08   92->205  0.12   172->92  0.09   165->172  0.10   191->165  0.11   0->191  0.11   
0 to 247 (0.88)  116->247  0.08   194->116  0.09   87->194  0.08   136->87  0.10   55->136  0.10   5->55  0.11   32->5  0.11   93->32  0.07   44->93  0.07   0->44  0.06   
0 to 248 (0.16)  97->248  0.09   0->97  0.08   
0 to 249 (0.78)  200->249  0.06   107->200  0.08   69->107  0.06   128->69  0.12   78->128  0.04   77->78  0.11   187->77  0.11   93->187  0.08   44->93  0.07   0->44  0.06   


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值