//图
    function Graph(v) {
        this.vertices = v;
        this.vertextlist = [];
        this.edges = 0;
        this.adj = [];
        for (var i = 0; i < this.vertices; ++i) {
            this.adj[i] = [];
            this.adj[i]="";
        }
        this.addEdge = addEdge;
        this.showGraph = showGraph;
        this.dfs = dfs;
        this.marked = [];
        for (var i = 0; i < this.vertices; i++) {
            this.marked[i] = false;
        }
        this.bfs = bfs;
        this.edgeTo = [];
        this.hasPathTo = hasPathTo;
        this.topSortHelper = topSortHelper;
        this.topSort = topSort;
    }
 
    function topSort() {
        var stack = [];
        var visited = [];
        for (var i = 0; i < this.vertices; i++) {
            visited[i] = false;
        }
        for (var i = 0; i < stack.length; i++) {
            if (visited[i] = false) {
                this.topSortHelper(i, visited, stack);
            }
        }
        for (var i = 0; i < stack.length; i++) {
            if (stack[i] != undefined && stack[i] != false) {
                print(this.vertextlist[stack[i]]);
            }
        }
    }
 
    function topSortHelper(v,visited,stack) {
        visited[v] = true;
        for (var i = 0; i < this.adj[v].length;i++)
        {
            if (!visited[i]) {
                this.topSortHelper(visited[i], visited, stack);
            }
        }
        stack.push(v);
    }
 
    function addEdge(v,w) {
        this.adj[v]=w;
        this.adj[w]=v;
        this.edges++;
    }
 
   
    function showGraph() {
        for (var i = 0; i < this.vertices; i++) {
            for (var j = 0; j < this.vertices; ++j) {
                if (this.adj[i][j] != undefined)
                {
                    document.getElementById('Context').innerHTML = this.adj[i][j];
                }
            }
        }
    }
 
    var dataStore = [];
    var nums = 100;
    function setData() {
        for (var i = 0; i <nums; i++) {
            dataStore[i] = Math.floor(Math.random() * (nums + 1));
        }
    }
 
    function ToString() {
        var restr = "";
        for (var i = 0; i < dataStore.length; i++) {
            restr += dataStore[i] + " ";
            if (i > 0 && i % 10 == 0)
            {
                restr += "</br>";
            }
        }
    //    return restr;
    //}
好好学习,天天向上。
原文地址:https://www.cnblogs.com/Zhengxue/p/6141421.html