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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? graph.java

?? 本程序是用java語言編寫的數據挖掘分類算法中的決策樹分類方法c4.5程序代碼
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
        Node w = e.target();
        del_adj_edge(e,v,w);
        e_list.remove(e);
        h_list.addLast(e);
        e.id |= 0x80000000;
        post_hide_edge_handler(e);
    }
    
    /** Returns true if the given edge is hidden, false otherwise.
     * @param e The edge to be checked.
     * @return True if the given edge is hidden, false otherwise.
     */    
    public boolean is_hidden(Edge e){return (e.id & 0x80000000) != 0;}
    
    /** Restores edge from being hidden.
     * @param e Edge to be restored.
     */    
    public void restore_edge(Edge e){
        if (!is_hidden(e))
            System.err.println("graph::restore_edge: edge is not hidden.");	//error_handler 1
        pre_restore_edge_handler(e);
        Node v = e.source();
        Node w = e.target();
        h_list.remove(e);
        e_list.addLast(e);
        if (undirected){
            v.append_adj_edge(e,0,0);
            w.append_adj_edge(e,0,1);
        }
        else{
            v.append_adj_edge(e,0,0);
            w.append_adj_edge(e,1,1);
        }
        //		e.id = indexof(e);	//edge id needs to be updated to point to the right location :JL
        e.id = e.index();
        post_restore_edge_handler(e);
    }
    
    /** Restore all edges.
     */    
    public void restore_all_edges(){
        Edge e;
        while (h_list.size() > 0){
            e =(Edge)h_list.getFirst();
            restore_edge(e);
        }
        //obs		Edge e = (Edge)h_list.head();
        //obs		while (e){
        //obs			edge succ = (edge)h_list.succ(e);
        //obs			restore_edge(e);
        //obs			e = succ;
        //obs		}
    }
    
    /** Delete the given node.
     * @param v The node to be deleted.
     */    
    public void del_node(Node v){
        if (v.owner != this)
            System.err.println("del_node(v): v is not in G");	//error_handler 4
        // delete adjacent edges
        Edge  e;
        //waiting for del_edge		while ((e=v.first_adj_edge[0]) != null) del_edge(e);
        if (!undirected)
            //waiting for del_edge		while ((e=v.first_adj_edge[1]) != null) del_edge(e);
            pre_del_node_handler(v);
        //waiting for clear_node_entry		if (parent == null) clear_node_entry(v.data);
        v_list.remove(v);
        v_free.addLast(v);
        //obs		v_free.append(v);
        //waiting for GraphMap() in GraphMap		GraphMap m;
        //waiting for GraphMap() in GraphMap		for(int j = 0;j < 3; j++){
        //waiting for GraphMap() in GraphMap			int i = m.g_index;
        //waiting for clear_entry in GraphMap			if (i > 0) m.clear_entry(v.data);
        //waiting for GraphMap() in GraphMap		}
        //obs		forall(m,map_list[0]){
        //obs			int i = m.g_index;
        //obs			if (i > 0) m.clear_entry(v.data);
        //obs		}
        //waiting for post_del_node_handler in GraphMap		post_del_node_handler();
    }
    
    private void del_face(Face f){
        f_list.remove(f);
        f_free.addLast(f);
        //obs		f_free.append(f);
        GraphMap m;
        for(ListIterator maps = map_list[2].listIterator(); maps.hasNext(); ){
            m = (GraphMap)maps.next();
            //obs		forall(m,map_list[2]){
            int i = m.g_index;
            //waiting for clear_entry in GraphMap			if (i > 0) m.clear_entry(f.data);
            //obs			if (i > 0) m.clear_entry(f.data[i]);
        }
    }
    
    /** Edge to be deleted.
     * @param e Edge to be deleted.
     */    
    public void del_edge(Edge e){
        Node v = e.source();
        Node w = e.target();
        if (v.owner != this) System.err.println("del_edge(e): e is not in G");	//error_handler 10
        pre_del_edge_handler(e);
        if (is_hidden(e)) restore_edge(e);
        if (e.rev != null) e.rev.rev = null;
        del_adj_edge(e,v,w);
        //waiting for clear_edge_entry		if (parent == null) clear_edge_entry(e.data);
        e_list.remove(e);
        e_free.addLast(e);
        //obs		e_free.append(e);
        GraphMap m;
        int i;
        for(int j = 0; j < map_list[1].size(); j++){
            m = (GraphMap)map_list[1].get(j);
            i = m.g_index;
            //waiting for clear_entry			if (i > 0) m.clear_entry(e.data);
        }
        //obs		forall(m,map_list[1]){
        //obs			int i = m->g_index;
        //obs			if (i > 0) m->clear_entry(e->data[i]);
        //obs		}
        post_del_edge_handler(v,w);
    }
    
    /** Deletes the nodes in the given list.
     * @param L List of nodes to be deleted.
     */    
    public void del_nodes(LinkedList L){
        for(int i = 0; i < L.size(); i++) del_node((Node)L.get(i));
        //obs		Node v;
        //obs		forall(v,L) del_node(v);
    }
    
    /** Deletes the edges in the given list.
     * @param L List of edges to be deleted.
     */    
    public void del_edges(LinkedList L){
        for(int i = 0; i < L.size(); i++) del_edge((Edge)L.get(i));
        //obs		edge e;
        //obs		forall(e,L) del_edge(e);
    }
    
    /** Deletes all nodes in graph.
     */    
    public void del_all_nodes() { clear(); }
    
    /** Deletes all edges in graph.
     */    
    public void del_all_edges(){
        Edge e;
        //obs		e = (Edge)e_list.getFirst();
        //obs		while (e)
        //obs			{ edge next = (edge)e_list.succ(e);
        //obs			dealloc_edge(e);
        //obs			e = next;
        //obs		}
        //obs		e = (edge)h_list.head();
        //obs		while (e)
        //obs			{ edge next = (edge)h_list.succ(e);
        //obs			dealloc_edge(e);
        //obs			e = next;
        //obs		}
        //obs		e = (edge)e_free.head();
        //obs		while (e)
        //obs			{ edge next = (edge)e_free.succ(e);
        //obs			dealloc_edge(e);
        //obs			e = next;
        //obs		}
        e_list.clear();
        h_list.clear();
        e_free.clear();
        max_edge_index = -1;
        Node v;
        for(int n = 0; n < v_list.size(); n++){
            v =(Node)v_list.get(n);
            for(int i = 0; i<2; i++){
                v.first_adj_edge[i] = null;
                v.last_adj_edge[i] = null;
                v.adj_length[i] = 0;
            }
        }
        //obs		forall_nodes(v,*this)
        //obs		for(int i=0; i<2; i++)
        //obs			{ v->first_adj_edge[i] = nil;
        //obs			v->last_adj_edge[i] = nil;
        //obs			v->adj_length[i] = 0;
        //obs		}
    }
    
    /** Deletes all faces of graph.
     */    
    public void del_all_faces(){
        f_free.clear();
        f_list.clear();
        FaceOf = null;
        max_face_index = -1;
    }
    
    /** Moves edge e.
     * @param e Edge to be moved.
     * @param e1 Edge connected to the source node.
     * @param e2 Edge connected to the target node.
     * @param d1 Method of connecting to e1. The new edge is connected after(if d1=0)/before(if d1=1) e1.
     * @param d2 Method of connecting to e2. The new edge is connected after(if d2=0)/before(if d2=1) e2.
     */    
    public void move_edge(Edge e,Edge e1,Edge e2,int d1,int d2){
        if (is_hidden(e))
            System.err.println("graph::move_edge:  cannot move hidden edge.");	//error_handler 1
        Node v0 = e.source();
        Node w0 = e.target();
        Node v = e1.source();
        Node w = e1.target();
        pre_move_edge_handler(e,v,w);
        del_adj_edge(e,e.source(),e.target());
        e.term[0] = v;
        e.term[1] = w;
        ins_adj_edge(e,v,e1,w,e2,d1,d2);
        post_move_edge_handler(e,v0,w0);
    }
    
    /** Moves edge e.
     * @param e Edge to be moved.
     * @param e1 Edge connected to the source node.
     * @param w New target node.
     * @param dir Method of connecting to e1. The new edge is connected after(if dir=0)/before(if dir=1) e1.
     */    
    public void move_edge(Edge e,Edge e1,Node w,int dir){
        if (is_hidden(e))
            System.err.println("graph::move_edge:  cannot move hidden edge.");	//error_handler 1
        Node v0 = e.source();
        Node w0 = e.target();
        Node v = e1.source();
        pre_move_edge_handler(e,v,w);
        del_adj_edge(e,e.source(),e.target());
        e.term[0] = v;
        e.term[1] = w;
        ins_adj_edge(e,e1.source(),e1,w,null,dir,0);
        post_move_edge_handler(e,v0,w0);
    }
    
    /** Moves edge e.
     * @param e Edge to be moved.
     * @param v New source node.
     * @param w New target node.
     */    
    public void move_edge(Edge e, Node v, Node w){
        if (is_hidden(e))
            System.err.println("graph::move_edge:  cannot move hidden edge.");	//error_handler 1
        Node v0 = e.source();
        Node w0 = e.target();
        pre_move_edge_handler(e,v,w);
        del_adj_edge(e,e.source(),e.target());
        e.term[0] = v;
        e.term[1] = w;
        ins_adj_edge(e,v,null,w,null,0,0);
        post_move_edge_handler(e,v0,w0);
    }
    
    /** Reverses the direction of the given edge.
     * @param e The edge whose direction is reversed.
     * @return The reversed edge.
     */    
    public Edge rev_edge(Edge e){
        if (is_hidden(e))
            System.err.println("graph::move_edge:  cannot move hidden edge.");	//error_handler	1
        Node v = e.source();
        Node w = e.target();
        pre_move_edge_handler(e,w,v);
        if (is_hidden(e)){ // e hidden
            e.term[0] = w;
            e.term[1] = v;
            return e;
        }
        if (undirected){
            Edge s = e.succ_adj_edge[0];
            Edge p = e.pred_adj_edge[0];
            e.succ_adj_edge[0] = e.succ_adj_edge[1];
            e.pred_adj_edge[0] = e.pred_adj_edge[1];
            e.succ_adj_edge[1] = s;
            e.pred_adj_edge[1] = p;
            e.term[0] = w;
            e.term[1] = v;
        }
        else{
            del_adj_edge(e,v,w);
            e.term[0] = w;
            e.term[1] = v;
            ins_adj_edge(e,w,null,v,null,0,0);
        }
        post_move_edge_handler(e,v,w);
        return e;
    }
    
    /** Reverses the direction on all edges.
     */    
    public void rev_all_edges(){
        if (!undirected){
            LinkedList L = all_edges();
            for(ListIterator LI = L.listIterator();
            LI.hasNext();
            rev_edge((Edge)LI.next()));
            //obs    edge e;
            //obs    forall(e,L) rev_edge(e);
        }
    }
    
    /** Reverses all edges.
     * @return Graph of reversed edges.
     */    
    public Graph rev(){rev_all_edges(); return this;}
    
    /** Creates a list of reversed edges.
     * @return List of reversed edges.
     */    
    public LinkedList insert_reverse_edges(){
        
        LinkedList L = new LinkedList();
        Edge e = first_edge();
        if (e != null){
            L.addLast(new_edge(e.target(),e.source(),e.data));
            //waiting for copy_edge_entry			copy_edge_entry(e.data);
            e = succ_edge(e);
        }
        Edge stop = last_edge();
        while (e != stop){
            L.addLast(new_edge(e.target(),e.source(),e.data));
            //waiting for copy_edge_entry			copy_edge_entry(e.data);
            e = succ_edge(e);
        }
        return L;
    }
    
    /** Converts this graph 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日本一区二区三区四区| 欧美裸体bbwbbwbbw| 亚洲综合一二区| 欧美不卡在线视频| 一本大道久久a久久精品综合| 免费在线观看视频一区| 国产精品天美传媒沈樵| 日韩一级片网址| 色综合咪咪久久| 激情综合色综合久久综合| 亚洲另类春色国产| 国产拍揄自揄精品视频麻豆| 欧美精选一区二区| 色综合久久中文综合久久97| 国内不卡的二区三区中文字幕| 亚洲精品视频观看| 国产日本亚洲高清| 日韩免费一区二区| 欧美日韩不卡在线| 日本精品一级二级| 99久久99久久免费精品蜜臀| 精彩视频一区二区| 日本一道高清亚洲日美韩| 亚洲激情综合网| 中文字幕在线播放不卡一区| 精品国产3级a| 日韩三级在线观看| 欧美丰满少妇xxxxx高潮对白| 99精品国产热久久91蜜凸| 国产不卡在线一区| 国产精品亚洲成人| 国产精品自拍av| 黄色成人免费在线| 九九热在线视频观看这里只有精品| 午夜亚洲福利老司机| 亚洲一区二区三区国产| 亚洲激情中文1区| 亚洲美女少妇撒尿| 亚洲欧美激情视频在线观看一区二区三区| 久久久久久97三级| 久久久久国产精品厨房| wwwwww.欧美系列| 久久久久久久久久久久久久久99 | 蜜臀av一级做a爰片久久| 亚洲自拍都市欧美小说| 一区二区三区欧美日| 一区二区在线观看视频在线观看| 亚洲三级在线看| 一区二区三区精品在线| 亚洲午夜久久久| 日韩精品久久久久久| 视频一区二区三区中文字幕| 久久国产精品露脸对白| 极品少妇xxxx精品少妇| 国产乱码精品一区二区三区av | 成人avav影音| 99v久久综合狠狠综合久久| 97久久精品人人做人人爽| 91蜜桃婷婷狠狠久久综合9色| 91视频免费观看| 欧美日韩一区在线| 91精品欧美久久久久久动漫| 精品日产卡一卡二卡麻豆| 国产天堂亚洲国产碰碰| 亚洲精品日日夜夜| 人人爽香蕉精品| 国产精品一区免费视频| 99久久精品一区二区| 在线观看av一区二区| 日韩亚洲欧美一区二区三区| 久久久99精品久久| 亚洲欧洲综合另类在线 | 成人av在线电影| 色综合久久99| 日韩一区二区三区电影在线观看 | 午夜一区二区三区视频| 久久精品国产99国产| 成人一区二区三区视频在线观看| 色综合天天综合色综合av| 欧美日本国产一区| 国产亚洲欧美日韩俺去了| 亚洲欧美一区二区三区极速播放 | 成人动漫一区二区三区| 欧美日韩亚洲综合| 精品国产在天天线2019| 亚洲色图清纯唯美| 久久99久久精品| 99精品1区2区| 欧美xxxx在线观看| 亚洲美女精品一区| 国产伦精品一区二区三区免费迷| 色狠狠一区二区三区香蕉| 精品日韩一区二区| 亚洲一区在线观看视频| 国产麻豆精品在线观看| 欧美喷水一区二区| 中文字幕在线不卡一区二区三区 | 精品午夜一区二区三区在线观看| jlzzjlzz国产精品久久| 日韩三级视频在线看| 亚洲一线二线三线久久久| 国产成人精品亚洲日本在线桃色 | 日韩三级免费观看| 亚洲精品ww久久久久久p站| 国产精品123区| 欧美一级电影网站| 亚洲黄色片在线观看| 成人精品亚洲人成在线| 日韩欧美国产不卡| 亚洲超碰97人人做人人爱| 97久久久精品综合88久久| 26uuu国产日韩综合| 三级欧美韩日大片在线看| 91黄色激情网站| 中文欧美字幕免费| 极品美女销魂一区二区三区| 91精品国产综合久久久久久久久久 | 久久久久久久久久久久久久久99| 日韩在线一区二区| 色成人在线视频| 国产精品色婷婷久久58| 国产精品一区三区| 欧美精品一区二区久久婷婷| 日韩精品欧美精品| 欧美久久久久中文字幕| 亚洲国产精品综合小说图片区| 91在线精品一区二区| 国产精品久久久久一区二区三区共 | 欧美极品少妇xxxxⅹ高跟鞋| 国产综合成人久久大片91| 日韩一区二区免费视频| 日韩成人午夜电影| 欧美日韩中字一区| 亚洲乱码一区二区三区在线观看| 99久久99久久精品免费看蜜桃| 国产女人18毛片水真多成人如厕| 国产在线精品视频| 国产欧美在线观看一区| 国产a级毛片一区| 中文字幕第一区| 成人动漫在线一区| 综合av第一页| 在线一区二区三区做爰视频网站| 亚洲欧美一区二区三区孕妇| 日本乱人伦一区| 亚洲成人手机在线| 正在播放一区二区| 精品无人码麻豆乱码1区2区| 国产情人综合久久777777| 国产福利电影一区二区三区| 中文字幕欧美激情| 91首页免费视频| 亚洲成人一区二区在线观看| 日韩一级在线观看| 国产乱码精品1区2区3区| 欧美国产精品一区二区| 97精品视频在线观看自产线路二 | 国产suv一区二区三区88区| 日韩美女视频19| 在线观看网站黄不卡| 三级亚洲高清视频| 久久久久久久精| 91碰在线视频| 三级精品在线观看| 国产色一区二区| 99久久99久久精品国产片果冻| 亚洲在线观看免费| 欧美videos中文字幕| 国产成人丝袜美腿| 亚洲综合免费观看高清在线观看| 51精品久久久久久久蜜臀| 国产精品88888| 夜夜爽夜夜爽精品视频| 日韩欧美中文一区二区| 国产成人精品一区二| 亚洲国产乱码最新视频| 久久欧美一区二区| 色婷婷综合久久久久中文 | 亚洲男人的天堂av| 69av一区二区三区| 国产sm精品调教视频网站| 亚洲一区二区三区影院| 久久青草国产手机看片福利盒子 | 色婷婷综合五月| 狠狠色伊人亚洲综合成人| 亚洲欧美日韩久久| 欧美成人vps| 欧美中文字幕不卡| 国产伦精品一区二区三区在线观看| 亚洲啪啪综合av一区二区三区| 日韩亚洲欧美中文三级| 色综合欧美在线视频区| 国产精品资源在线观看| 亚洲一区在线播放| 国产欧美日韩另类一区| 欧美精品久久久久久久多人混战 | 亚洲欧美一区二区在线观看| 69堂精品视频| 日本韩国欧美在线| 大桥未久av一区二区三区中文|