亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? graph.java

?? 本程序是用java語言編寫的數(shù)據(jù)挖掘分類算法中的決策樹分類方法c4.5程序代碼
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
    /** Copies the given graph into this graph.
     * @param G The graph to be copied.
     */    
    public void assign(Graph G){
        if (G != this){
            clear();
            undirected = G.undirected;
            copy_graph(G);
        }
    }
    
    /** Sets the node entry, does nothing.
     * @param v The node to be set.
     * @param s The new setting. */    
    public void set_node_entry(Node v, String s){
        //waiting on clear_node_entry		clear_node_entry(v.data);
        //obs		clear_node_entry(v->data[0]);
        //		if (node_type().compareTo("string") == 0)
        //obs		if (strcmp(node_type(),"string") == 0)
        //waiting on leda_copy			v.data = leda_copy(s);
        //obs			v->data[0] = leda_copy(s);
        //		else{
        //waiting for definition of istrstream			istrstream in(s.cstring());
        //			read_node_entry(in,v.data);
        //obs			read_node_entry(in,v->data[0]);
        //		}
    }
    
    /** Sets the edge entry, does nothing.
     * @param e The edge to be set.
     * @param s The new setting. */    
    public void set_edge_entry(Edge e, String s){
        //waiting on clear_edge_entry		clear_edge_entry(e.data);
        //obs		clear_edge_entry(e->data[0]);
        //		if (edge_type().compareTo("string") == 0)
        //obs		if (strcmp(edge_type(),"string") == 0)
        //waiting on leda_copy			e.data = leda_copy(s);
        //obs			e->data[0] = leda_copy(s);
        //		else{
        //waiting for definition of istrstream			istrstream in(s.cstring());
        //			read_edge_entry(in,e.data);
        //obs			read_edge_entry(in,e->data[0]);
        //		}
    }
    
    // virtual functions called before and after update operations
    // (e.g. useful for graph editors)
    
    // node handler							// called
    /** Function called before inserting a node.         */
    protected void pre_new_node_handler() {}		// before inserting a node
    /** Function called after inserting a node.
     * @param A The node added. */    
    protected void post_new_node_handler(Node A) {}	// after inserting node v
    /** Function called before deleting a node.
     * @param A Node deleted. */    
    protected void pre_del_node_handler(Node A) {}	// before deleting node v
    /** Function called after node deleted. */
    protected void post_del_node_handler() {}		// after deleting a node
    
    
    // edge handler
    /** Function called before a new edge is created.
     * @param A Source node.
     * @param B Target node.
     */    
    protected void pre_new_edge_handler(Node A, Node B) {}	// before creating (v,w)
    /** Function called after new edge is created.
     * @param E The new edge.
     */    
    protected void post_new_edge_handler(Edge E) {}			// after insertion of e
    
    /** Function called when edge is deleted.
     * @param E The edge deleted.
     */    
    protected void pre_del_edge_handler(Edge E) {}			// before deleteing edge e
    /** Function called after edge is deleted.
     * @param A Source node of edge.
     * @param B Target node of edge.
     */    
    protected void post_del_edge_handler(Node A, Node B) {}	// after deletion of (v,w)
    
    /** Function called before edge is moved.
     * @param E Edge moved.
     * @param A Edge's source node.
     * @param B Edge's target node.
     */    
    protected void pre_move_edge_handler(Edge E,Node A,Node B){}	// before moving e to (v,w)
    /** Function called after edge is moved.
     * @param E The edge moved.
     * @param A The edge's source node.
     * @param B The edge's target node.
     */    
    protected void post_move_edge_handler(Edge E,Node A,Node B){}	// after moved e from (v,w)
    
    /** Function called before edge is hidden.
     * @param E Edge to hide.
     */    
    protected void pre_hide_edge_handler(Edge E) {}          // before hiding edge e
    /** Function called after edge is hidden.
     * @param E Edge hidden.
     */    
    protected void post_hide_edge_handler(Edge E) {}         // after hiding edge e
    
    /** Function called before edge is restored.
     * @param E Edge to be restored.
     */    
    protected void pre_restore_edge_handler(Edge E) {}       // before restoring edge e
    /** Function called after edge is restored.
     * @param E Edge restored.
     */    
    protected void post_restore_edge_handler(Edge E) {}      // after restoring edge e
    
    
    // global handler
    /** Function called before entries are cleared.
     */    
    protected void pre_clear_handler()  {}                 // before deleting graph
    /** Function called after entries are cleared.
     */    
    protected void post_clear_handler() {}                 // after deleting graph
    
    
    /** Returns the number of nodes.
     * @return Number of nodes. */    
    public int number_of_nodes(){return v_list.size(); }
    /** Returns the number of edges.
     * @return Number of edges. */    
    public int number_of_edges(){return e_list.size(); }
    
    /** Returns a list of all nodes in this graph.
     * @return A list of nodes.
     */    
    public LinkedList all_nodes(){
        v_list_tmp.clear();
        for(ListIterator nodes = v_list.listIterator();
        nodes.hasNext();
        v_list_tmp.addLast(nodes.next()));
        return v_list_tmp;
    }
    
    /** Returns a list of all edges in this graph.
     * @return A list of edges.
     */    
    public LinkedList all_edges(){
        e_list_tmp.clear();
        for(ListIterator edges = e_list.listIterator();
        edges.hasNext();
        e_list_tmp.addLast(edges.next()));
        return e_list_tmp;
    }
    
    /** Returns a list of all faces in this graph.
     * @return A list of faces.
     */    
    public LinkedList all_faces(){
        f_list_tmp.clear();
        for(ListIterator faces = f_list.listIterator();
        faces.hasNext();
        f_list_tmp.addLast(faces.next()));
        return f_list_tmp;
    }
    
    /** Choose a random node.
     * @return A node.
     */    
    public Node choose_node(){
        int n = number_of_nodes();
        if (n == 0) return null;
        Random rand = new Random();
        int r = rand.nextInt(n);
        Node v = (Node)v_list.get(r);
        return v;
    }
    
    /** Choose random edge.
     * @return An edge.
     */    
    public Edge choose_edge(){
        int m = number_of_edges();
        if (m == 0) return null;
        Random rand = new Random();
        int r = rand.nextInt(m);
        Edge e = (Edge)e_list.get(r);
        return e;
    }
    
    /** Returns true if this graph is directed, false otherwise.
     * @return True if this graph is directed, false otherwise.
     */    
    public boolean is_directed(){ return !undirected; }
    /** Returns true if this graph is undirected, false otherwise.
     * @return True if this graph is undirected, false otherwise.
     */    
    public boolean is_undirected(){ return undirected; }
    /** Returns true if there are no nodes in this graph, false otherwise.
     * @return True if there are no nodes in this graph, false otherwise.
     */    
    public boolean empty(){ return v_list.size() == 0; }
    
    //entry used to return addresses to the data, but there are no addresses in java
    /** Returns the data stored in this graph object.
     * @param v The object whose information is requested.
     * @return The data stored in the given object.
     */    
    public Object entry(Node v){return v.data;}
    /** Returns the data stored in this graph object.
     * @param e The object whose information is requested.
     * @return The data stored in the given object.
     */    
    public Object entry(Edge e){return e.data;}
    /** Returns the data stored in this graph object.
     * @param f The object whose information is requested.
     * @return The data stored in the given object.
     */    
    public Object entry(Face f){return f.data;}
    
    //essentially the same as entry
    /** Returns the data stored in this graph object.
     * @param v The object whose information is requested.
     * @return The data stored in the given object.
     */    
    public Object inf(Node v){return v.data;}
    /** Returns the data stored in this graph object.
     * @param e The object whose information is requested.
     * @return The data stored in the given object.
     */    
    public Object inf(Edge e){return e.data;}
    /** Returns the data stored in this graph object.
     * @param f The object whose information is requested.
     * @return The data stored in the given object.
     */    
    public Object inf(Face f){return f.data;}
    
    /** Splits edge e into edges e1 and e2.
     * @param e Edge to be split.
     * @param node_inf Node data for target node.
     * @param e1 First edge si is split into.
     * @param e2 Second edge e is split into.
     * @return The new target node.
     */    
    protected Node split_edge(Edge e, Object node_inf, Edge e1, Edge e2){
        // splits e into e1 and e2 by putting new node v on e
        // WARNING: changes e1, e2.
        //node v = source(e);
        Node w = e.target();
        Node u = add_node(node_inf);
        e1 = e;
        e2 = add_edge(u,w,e.data);
        //waiting on copy_edge_entry		copy_edge_entry(e2.data);
        if (undirected){
            u.append_adj_edge(e2,0,0);
            w.insert_adj_edge(e2,e,0,1,0);
            w.del_adj_edge(e,0,1);
            e.term[1] = u;
            u.append_adj_edge(e,0,1);
        }
        else{
            u.append_adj_edge(e2,0,0);
            w.insert_adj_edge(e2,e,1,1,0);
            w.del_adj_edge(e,1,1);
            e.term[1] = u;
            u.append_adj_edge(e,1,1);
        }
        return u;
    }
    
    /** Assigns the given data to the graph object.
     * @param v The node to store the data.
     * @param x The data stored.
     */    
    protected void assign(Node v,Object x){v.data = x;}
    /** Assigns the given data to the graph object.
     * @param e The edge to store the data.
     * @param x The data stored.
     */    
    protected void assign(Edge e,Object x){e.data = x;}
    /** Assigns the given data to the graph object.
     * @param f The face to store the data.
     * @param x The data stored.
     */    
    protected void assign(Face f,Object x){f.data = x;}
    
    /** Returns the face containing e.
     * @param e Edge for which face is requested.
     * @return The face holding e.
     */    
    protected Face access_face(Edge e){return (Face)FaceOf.map_access(e); }
    
    /** Merges the given nodes.
     * @param v1 First node merged.
     * @param v2 Second node merged.
     * @return The merged node.
     */    
    public Node merge_nodes(Node v1,Node v2){
        if (undirected)
            System.err.println("merge_nodes not implemented for undirected graphs.");	//error_handler 1
        for(int i=0; i<2; i++){
            if (v1.last_adj_edge[i] != null)
                v1.last_adj_edge[i].succ_adj_edge[i] = v2.first_adj_edge[i];
            else
                v1.first_adj_edge[i] = v2.first_adj_edge[i];
            if (v2.first_adj_edge[i] != null){
                v2.first_adj_edge[i].pred_adj_edge[i] = v1.last_adj_edge[i];
                v1.last_adj_edge[i] = v2.last_adj_edge[i];
            }
            v1.adj_length[i] += v2.adj_length[i];
            v2.adj_length[i] = 0;
            v2.first_adj_edge[i] = null;
            v2.last_adj_edge[i] = null;
        }
        //waiting for del_node		del_node(v2);
        return v1;
    }
    
    /** Splits edge e into e1 and e2.
     * @param e Edge to be split.
     * @param e1 First edge split from e.
     * @param e2 Second edge split from e.
     * @return The target node of the split edge.
     */    
    public Node split_edge(Edge e,Edge e1,Edge e2){
        //Warning: changes e1 and e2
        Object x = null;
        //waiting for init_node_entry		init_node_entry(x);
        return split_edge(e,x,e1,e2);
    }
    
    /** Makes the given edge hidden.
     * @param e Edge to hide.
     */    
    public void hide_edge(Edge e){
        if (is_hidden(e))
            System.err.println("graph::hide_edge: edge is already hidden.");	//error_handler 1
        pre_hide_edge_handler(e);
        Node v = e.source();

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区91精品张津瑜| 91.xcao| 日本乱人伦一区| 在线综合视频播放| 中文在线一区二区| 久久99精品国产91久久来源| 91美女片黄在线| 亚洲精品在线电影| 亚洲福利视频三区| 成人精品鲁一区一区二区| 欧美一三区三区四区免费在线看| 中文字幕中文在线不卡住| 九九热在线视频观看这里只有精品| 91小宝寻花一区二区三区| 日韩色视频在线观看| 亚洲成人精品影院| 日本电影亚洲天堂一区| 久久精品视频一区| 精品一区二区三区欧美| 911精品国产一区二区在线| 一片黄亚洲嫩模| av动漫一区二区| 中国av一区二区三区| 国产资源在线一区| 精品国产麻豆免费人成网站| 日韩av一区二区在线影视| 欧美人与禽zozo性伦| 亚洲综合网站在线观看| 在线免费观看视频一区| 亚洲色图.com| 91在线免费看| 亚洲综合一区二区| 欧美自拍偷拍一区| 偷拍一区二区三区| 在线观看91av| 免费观看成人鲁鲁鲁鲁鲁视频| 欧美精品日韩一区| 天堂av在线一区| 欧美高清视频一二三区| 午夜久久久久久| 91精品国产综合久久精品app | 一本大道久久a久久综合婷婷| 日本一区二区高清| 高清久久久久久| 亚洲欧美日韩精品久久久久| 色综合天天综合色综合av | 欧美xxx久久| 黑人巨大精品欧美黑白配亚洲| 久久综合色之久久综合| 国产一区二区精品久久91| 国产精品视频线看| 在线一区二区三区四区五区| 午夜久久久久久久久久一区二区| 久久色在线观看| 国产91丝袜在线播放九色| 日韩毛片视频在线看| 欧洲生活片亚洲生活在线观看| 亚洲成在人线在线播放| 精品国产91洋老外米糕| 成人精品高清在线| 亚洲二区在线观看| 欧美白人最猛性xxxxx69交| 波多野结衣一区二区三区| 一区二区理论电影在线观看| 欧美电影免费观看高清完整版在 | 欧美性生活大片视频| 午夜精品久久久久久久久久| 久久影院午夜论| 色综合色综合色综合色综合色综合 | 日韩av不卡在线观看| 欧美本精品男人aⅴ天堂| 成人爱爱电影网址| 午夜伦欧美伦电影理论片| 久久久久久久久久久久久女国产乱 | 中文字幕一区在线| ww亚洲ww在线观看国产| eeuss鲁一区二区三区| 天堂成人免费av电影一区| 国产欧美视频一区二区| 欧美三日本三级三级在线播放| 国产一区二区三区日韩| 一区二区三区美女视频| 国产亚洲欧洲一区高清在线观看| 欧美日韩一区不卡| 99re成人精品视频| 国产做a爰片久久毛片| 亚洲自拍偷拍网站| 国产精品精品国产色婷婷| 欧美成人精品1314www| 日本韩国一区二区| 高清av一区二区| 另类中文字幕网| 日韩黄色小视频| 亚洲麻豆国产自偷在线| 国产欧美一区二区精品性色超碰| 欧美一区二区大片| 欧美性大战久久久久久久蜜臀| 不卡电影一区二区三区| 韩国欧美国产1区| 久久综合综合久久综合| 日韩影视精彩在线| 亚洲国产aⅴ天堂久久| 亚洲免费av高清| 中文字幕一区三区| 亚洲国产精品传媒在线观看| 日韩欧美成人激情| 欧美一区二区三区日韩视频| 欧美日韩午夜在线视频| 成人黄动漫网站免费app| 国产精品99久久久久久有的能看| 另类综合日韩欧美亚洲| 久久丁香综合五月国产三级网站| 午夜视频在线观看一区二区三区| 一区二区三区色| 亚洲久草在线视频| 亚洲欧美偷拍另类a∨色屁股| 国产精品入口麻豆九色| 日本一区二区三级电影在线观看| 国产欧美一区二区三区网站| 国产欧美日本一区二区三区| 中文字幕乱码一区二区免费| 国产日韩av一区| 国产精品美女久久久久久 | 成人亚洲精品久久久久软件| 国产69精品久久久久毛片| 国产精品99久| 成人看片黄a免费看在线| 国产不卡视频在线播放| 成人性生交大片免费看在线播放| 成人精品鲁一区一区二区| 91麻豆免费看片| 亚洲另类色综合网站| 亚洲国产成人午夜在线一区| 国产精品久久久久aaaa樱花 | 成人avav在线| 一本色道久久加勒比精品 | 成人免费视频国产在线观看| 99国产精品国产精品毛片| 欧洲一区在线电影| 宅男在线国产精品| 26uuu久久天堂性欧美| 国产精品人妖ts系列视频| 亚洲欧美日韩精品久久久久| 日本成人在线电影网| 久久99在线观看| 99综合影院在线| 欧美人xxxx| 国产人成亚洲第一网站在线播放 | 亚欧色一区w666天堂| 黄页网站大全一区二区| 97久久超碰国产精品| 欧美日韩精品一区二区天天拍小说| 日韩一二三四区| 亚洲日本乱码在线观看| 麻豆极品一区二区三区| 99这里只有久久精品视频| 91精品国产乱码| 日韩美女精品在线| 麻豆国产一区二区| 91成人国产精品| 久久久久久亚洲综合| 亚洲制服丝袜在线| 国产精品香蕉一区二区三区| 欧美日韩视频专区在线播放| 亚洲精品一区二区三区香蕉 | 国产精品综合二区| 欧美日韩免费一区二区三区视频| 久久婷婷国产综合国色天香| 亚洲国产一区二区视频| 丰满少妇在线播放bd日韩电影| 欧美精品在线一区二区三区| 国产精品国产三级国产专播品爱网| 午夜精品久久久久久久| 色悠悠久久综合| 久久久99精品久久| 日韩电影在线免费看| 色综合久久综合网97色综合| 99久免费精品视频在线观看| 欧美性生活久久| 中文字幕一区二区三区色视频 | 国产一区二区三区免费看| 欧美亚洲精品一区| 欧美激情一区二区三区全黄| 中文字幕在线不卡一区| 国产精品123| 日韩免费观看高清完整版在线观看| 一区二区三区日韩| 成人动漫av在线| 精品国产乱码久久久久久久| 亚洲成人中文在线| 色综合久久中文字幕综合网| 国产片一区二区| 国产黄色精品视频| 亚洲精品在线一区二区| 久久国产精品72免费观看| 91精品啪在线观看国产60岁| 天堂资源在线中文精品| 欧美日韩在线播放三区四区| 亚洲国产三级在线| 欧美日韩久久久久久|