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

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

?? graph.java

?? 本程序是用java語言編寫的數據挖掘分類算法中的決策樹分類方法c4.5程序代碼
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
            System.err.println("new_edge(v,w): w not in graph");
        if ( e_free.size() == 0){
            //obs			e = (edge)std_memory.allocate_bytes(edge_bytes());
            //obs			new (e) edge_struct(v,w,inf);
            e = new Edge(v,w,info);
            e.id = ++max_edge_index;
        }
        else{
            e = (Edge)e_free.removeFirst();
            e.data = info;
            e.term[0] = v;
            e.term[1] = w;
            e.rev = null;
            e.succ_adj_edge[0] = null;
            e.succ_adj_edge[1] = null;
            e.pred_adj_edge[0] = null;
            e.pred_adj_edge[1] = null;
        }
        e_list.addLast(e);
        GraphMap m;
        //obs		forall(m,map_list[1]) m->re_init_entry(e);
        for(ListIterator maps = map_list[1].listIterator();
        maps.hasNext();
        m = (GraphMap)maps.next(), m.re_init_entry(e));
        return e;
    }
    
    
    private Face add_face(Object info){
        Face f;
        if (f_free.size() == 0){
            //obs			f = (face)std_memory.allocate_bytes(face_bytes());
            //obs			new (f) face_struct(inf);
            f = new Face(info);
            f.owner = this;
            f.id = ++max_face_index;
        }
        else{
            f = (Face)f_free.removeFirst();
            f.data = info;
        }
        f_list.addLast(f);
        GraphMap m;
        //obs		forall(m,map_list[2]) m->re_init_entry(f);
        for(ListIterator maps = map_list[2].listIterator();
        maps.hasNext();
        m = (GraphMap)maps.next(), m.re_init_entry(f));
        return f;
    }
    
    
    /** Adds edge e between the given nodes.
     * @param e Edge to be added.
     * @param v Source node for the edge.
     * @param e1 Edge connected to the source node.
     * @param w Target node for the edge.
     * @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 ins_adj_edge(Edge e, Node v, Edge e1, Node w, Edge e2,int d1,int d2){
        // insert edge e
        // after(if d1=0)/before(if d1=1) e1 to adj_list of v
        // after(if d2=0)/before(if d2=1) e2 to in_list (adj_list) of w
        // (most general form of new_edge)
        
        if ( undirected )
        { if (v == w)
              System.err.print("new_edge(v,e1,w,e2): selfloop in undirected graph.");
          if (e1 != null && v != e1.source() && v != e1.target())
              System.err.print("new_edge(v,e1,w,e2): v is not adjacent to e1.");
          if (e2 != null && w != e2.source() && w != e2.target())
              System.err.print("new_edge(v,e1,w,e2): w is not adjacent to e2.");
          
          v.insert_adj_edge(e,e1,0,0,d1);
          w.insert_adj_edge(e,e2,0,1,d2);
        }
        else
        { if (e1 != null && v != e1.source())
              System.err.print("new_edge(v,e1,w,e2): v is not source of e1.");
          if (e2 != null && w != e2.source() && w != e2.target())
              System.err.print("new_edge(v,e1,w,e2): w is not target of e2.");
          
          v.insert_adj_edge(e,e1,0,0,d1);
          w.insert_adj_edge(e,e2,1,1,d2);
        }
    }
    
    /** Deletes the given edge between the given nodes.
     * @param e The edge to be deleted.
     * @param v The source node for the edge.
     * @param w The target node for the edge. */    
    public void del_adj_edge(Edge e, Node v, Node w)
    { if (undirected){
          v.del_adj_edge(e,0,0);
          w.del_adj_edge(e,0,1);
      }
      else{
          v.del_adj_edge(e,0,0);
          w.del_adj_edge(e,1,1);
      }
    }
    
    /** Registers the given GraphMap.
     * @param M Graphmap to be registered.
     * @return -1 if there is not enough free_data space, 0 otherwise. */    
    public int register_map(GraphMap M){
        int k = M.kind;
        map_list[k].addLast(M);				//appends the map onto the end of map_list
        //		M.g_loc = map_list[k].size() - 1;		//M.g_loc gets the index number of GraphMap M in map_list
        
        //waiting on LEDA_GRAPH_DATA		if (LEDA_GRAPH_DATA)		//may be added to Globals class
        //		if (free_data[k].size() <= 0)
        //		System.err.println("graph::register_map: all data " + data_sz[k] + " slots used");	//error_handler 1
        return (free_data[k].size() <= 0) ? -1 : 0; //free_data[k].removeFirst();
        
    }
    
    /** Unregisters the given GraphMap.
     * @param M Graphmap to be unregistered. */    
    public void unregister_map(GraphMap M){
        int k = M.kind;
        map_list[k].remove(M.g_loc);
        if (M.g_index > 0) free_data[k].addFirst(new Integer(M.g_index));
    }
    
    /** Returns the first node in the graph's node list.
     * @return The first node.
     */    
    public Node first_node(){return (Node) v_list.getFirst();}

    /** Returns the last node in the graph's node list.
     * @return The last node.
     */    
    public Node last_node(){return (Node) v_list.getLast();}

    /** Returns the next node in the node list.
     * @param v The node whose successor is requested.
     * @return The next node. */    
    public Node succ_node(Node v){
        if (v != null && v.id < v_list.size() && v.id > 0)
        {return (Node)v_list.get(v.id + 1);}
        else {return null;}
    }
    
    /** Returns the previous node in the node list.
     * @param v The node whose predecessor is requested.
     * @return The previous node. */    
    public Node pred_node(Node v){
        if (v != null && v.id <= v_list.size() && v.id >= 0)
        {return (Node)v_list.get(v.id - 1);}
        else {return null;}
    }
    
    /** Returns the first edge in the edge list.
     * @return The first edge. */    
    public Edge first_edge(){return (Edge) e_list.getFirst();}

    /** Returns the last edge in the edge list.
     * @return The last edge. */    
    public Edge last_edge(){return (Edge) e_list.getLast();}

    /** Returns the next edge in the edge list.
     * @param e The edge whose successor is requested.
     * @return The next edge.
     */    
    public Edge succ_edge(Edge e){
        if (e != null && e.id < e_list.size() && e.id >= 0)
        {return (Edge)e_list.get(e.id + 1);}
        else {return null;}
    }

    /** Returns the previous edge in the edge list.
     * @param e The edge whose predecessor is requested.
     * @return The previous edge. */    
    public Edge pred_edge(Edge e){
        if (e != null && e.id <= e_list.size() && e.id > 0)
        {return (Edge)e_list.get(e.id - 1);}
        else {return null;}
    }
    
    /** Copy constructor.
     * @param a Graph to be copied.
     */    
    public Graph(Graph a){
        undirected = a.undirected;
        copy_graph(a);
        node_data_map = new GraphMap(this,0);
        edge_data_map = new GraphMap(this,1);
        adj_iterator = new GraphMap(this,0,0);
        a.copy_all_entries();
    }
    
    /** Copies all entries; does nothing.
     */    
    protected void copy_all_entries(){
        //obs		Node v;
        
        //waiting for copy_node_entry		for(ListIterator nodes = v_list.listIterator();
        //waiting for copy_node_entry		    nodes.hasNext();
        //waiting for copy_node_entry		    copy_node_entry(((Node)nodes.next()).data));
        
        //obs		forall_nodes(v,this) copy_node_entry(v.data[0]);
        //obs		for(Node LOOP_VAR = G.first_node(); LOOP_VAR != null; LOOP_VAR = G.succ_node(LOOP_VAR);)
        //obs			copy_node_entry(LOOP_VAR.data);
        //obs		Edge e;
        //obs		forall_edges(e,this) copy_edge_entry(e.data[0]);
        
        //waiting for copy_edge_entry		for(ListIterator edges = e_list.listIterator();
        //waiting for copy_edge_entry		    edges.hasNext();
        //waiting for copy_edge_entry		    copy_edge_entry(((Edge)edges.next()).data));
        // hidden edges
        //waiting for copy_edge_entry		for(ListIterator h_edges = h_list.listIterator();
        //waiting for copy_edge_entry		    h_edges.hasNext();
        //waiting for copy_edge_entry		    copy_edge_entry(((Edge)h_edges.next()).data));
        
        //obs		for(e = (Edge)h_list.getFirst(); e != null; e = (Edge)h_list.succ(e))
        //obs			copy_edge_entry(e.data);
    }
    
    /** Clears all entries, does nothing.
     */    
    protected void clear_all_entries(){
        //waiting for clear_node_entry		for(ListIterator nodes = v_list.listIterator();
        //waiting for clear_node_entry		    nodes.hasNext();
        //waiting for clear_node_entry		    clear_node_entry(((Node)nodes.next()).data));
        //obs		node v;
        //obs		forall_nodes(v,*this) clear_node_entry(v->data[0]);
        //waiting for clear_edge_entry		for(ListIterator edges = e_list.listIterator();
        //waiting for clear_edge_entry		    edges.hasNext();
        //waiting for clear_edge_entry		    clear_edge_entry(((Edge)edges.next()).data));
        //obs		edge e;
        //obs		forall_edges(e,*this) clear_edge_entry(e->data[0]);
        // hidden edges
        //waiting for clear_edge_entry		for(ListIterator h_edges = h_list.listIterator();
        //waiting for clear_edge_entry		    h_edges.hasNext();
        //waiting for clear_edge_entry		    clear_edge_entry(((Edge)h_edges.next()).data));
        //obs		for(e = (edge)h_list.head(); e; e = (edge)h_list.succ(e))
        //obs		clear_edge_entry(e->data[0]);
    }
    
    /** Returns "void".
     * @return "void" */    
    public String node_type(){ return "void"; }

    /** Returns "void".
     * @return "void" */    
    public String edge_type(){ return "void"; }

    /** Returns "void".
     * @return "void" */    
    public String face_type(){ return "void"; }
    
    /** Copies the given graph.
     * @param G The graph to be copied. */    
    public void copy_graph(Graph G){
        
        int n = G.number_of_nodes();
        
        for(int k = 0; k < 3; k++){
            data_sz[k] = G.data_sz[k];
            //free_data isn't a list of integers			for(int i=0; i < data_sz[k]; i++) free_data[k].addLast(i);
        }
       
        max_node_index = -1;
        max_edge_index = -1;
        max_face_index = -1;
        e_list.clear();
        FaceOf = null;
        parent = null;
        
        if (n == 0) return;	//If there are no nodes in Graph G there is no need to copy them
        
        Node[] node_vec = new Node[G.max_node_index+1];			//allocate additional vectors
        Edge[] edge_vec = new Edge[G.max_edge_index+1];
        
        if (node_vec == null || edge_vec == null)				//checks to see if vectors were allocated
            System.err.println(" copy_graph: out of memory");	//error_handler 1
        
        // allocate a single block of memory for all nodes
        //no memory allocation in java		// memory_allocate_block(sizeof(node_struct),n);
        
        Node v;
        for(ListIterator nodes = G.v_list.listIterator();
        nodes.hasNext();
        v = (Node)nodes.next(),
        new_node(v.data));
        
        
        // allocate a single block of memory for all edges
        // memory_allocate_block(sizeof(edge_struct),m);
        
        boolean loops_deleted = false;
        
        // copy faces (if existing)
        Face f;
        Face f1;
        for(ListIterator faces = G.f_list.listIterator();
        faces.hasNext();
        f = (Face)faces.next());
        node_vec = null;
        edge_vec = null;
        if ( loops_deleted )
            System.err.println("selfloops deleted in ugraph copy constructor");
    }
    
    /** Creates a new node.
     * @return A new node. */    
    public Object new_node(){
        Object x = null;
        pre_new_node_handler();
        Node v = add_node(x);
        v.setIndexNumber(v_list.indexOf(v));//used to provide reference numbers for Inducer.display_struct
        post_new_node_handler(v);
        return v;
    }
    
    /** Creates a new node.
     * @param i Data to be stored in this node.
     * @return A new node. */    
    protected Node new_node(Object i){
        pre_new_node_handler();
        Node v = add_node(i);
        v.setIndexNumber(v_list.indexOf(v)); //used to provide reference numbers for Inducer.display_struct
        post_new_node_handler(v);
        return v;
    }
    
    private Face new_face(Object i){
        return add_face(i);
    }
    
    private Face new_face(){
        Object i = null;
        return add_face(i);
    }
    

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩免费高清一区色橹橹| 懂色av中文字幕一区二区三区| 欧美色欧美亚洲另类二区| 亚洲伦理在线免费看| 欧美性生活久久| 视频一区免费在线观看| 欧美一区二区黄色| 国产真实精品久久二三区| 国产日本一区二区| 一本大道av一区二区在线播放| 亚洲成人www| 日韩女优制服丝袜电影| 国产suv一区二区三区88区| 亚洲欧洲99久久| 欧美日韩免费在线视频| 国模大尺度一区二区三区| 亚洲欧洲日本在线| 欧美狂野另类xxxxoooo| 国产精品一区二区久久不卡| 最新国产精品久久精品| 欧美一区二区三区四区在线观看| 国产一区二区在线视频| 亚洲激情第一区| 精品国产91乱码一区二区三区| 99视频精品免费视频| 日韩精品国产精品| 中文字幕一区在线观看| 欧美乱熟臀69xxxxxx| 成人午夜看片网址| 日韩精品欧美精品| 中文字幕在线播放不卡一区| 91精品国产综合久久久蜜臀粉嫩| 成人av资源下载| 六月丁香婷婷久久| 亚洲国产欧美日韩另类综合| www国产成人免费观看视频 深夜成人网| 一本大道综合伊人精品热热| 国产精品一区免费在线观看| 亚洲成人av在线电影| 国产免费成人在线视频| 日韩三级视频在线观看| 在线观看一区日韩| 国产成人日日夜夜| 日本不卡在线视频| 亚洲小说春色综合另类电影| 日本一区二区不卡视频| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美综合天天夜夜久久| 99久久99久久免费精品蜜臀| 国内精品第一页| 日韩精品成人一区二区在线| 亚洲精选视频免费看| 中文字幕欧美日韩一区| 日韩欧美第一区| 911精品国产一区二区在线| 99国内精品久久| 国产不卡视频在线观看| 国产一区二区三区四区五区入口 | 亚洲欧美日韩综合aⅴ视频| 亚洲欧洲精品一区二区三区| 91精品国产一区二区人妖| 91一区二区三区在线观看| 国v精品久久久网| 精东粉嫩av免费一区二区三区| 五月天亚洲精品| 天堂蜜桃一区二区三区 | 91精品国产高清一区二区三区蜜臀 | 一区二区在线免费观看| 国产天堂亚洲国产碰碰| 国产午夜精品一区二区| 久久精品一区二区三区av| 久久综合中文字幕| 久久这里只有精品6| 久久久美女毛片| 日本一区二区免费在线观看视频| 久久久久久久性| 国产精品色婷婷| 中文字幕一区免费在线观看| 中文字幕欧美一| 亚洲女同一区二区| 亚洲国产成人av| 日韩精品久久理论片| 蜜臀av性久久久久蜜臀aⅴ流畅| 蜜桃一区二区三区四区| 久久激五月天综合精品| 国产1区2区3区精品美女| 成人小视频在线| 欧洲av一区二区嗯嗯嗯啊| 色播五月激情综合网| 欧美日韩一区二区三区高清| 日韩一区二区麻豆国产| 久久伊人中文字幕| 国产精品麻豆欧美日韩ww| 亚洲精品一二三| 日韩制服丝袜av| 国产乱妇无码大片在线观看| 99re这里都是精品| 欧美福利一区二区| 久久久91精品国产一区二区精品| 国产精品国产三级国产aⅴ中文| 亚洲天堂久久久久久久| 日日嗨av一区二区三区四区| 国产伦精品一区二区三区免费迷| 成人中文字幕在线| 欧美在线免费视屏| 精品国产制服丝袜高跟| 国产精品久久久久精k8| 亚洲1区2区3区4区| 国产盗摄一区二区三区| 欧美中文一区二区三区| 精品av综合导航| 亚洲精品乱码久久久久久久久 | 久久免费精品国产久精品久久久久| 国产日韩欧美激情| 亚洲国产综合在线| 国产精品亚洲综合一区在线观看| www.亚洲激情.com| 欧美一三区三区四区免费在线看 | 国产精品一线二线三线| 在线观看一区二区视频| 精品国产免费视频| 亚洲综合视频在线| 国产伦精品一区二区三区免费迷| 欧美三级中文字幕| 国产欧美综合在线观看第十页| 午夜伊人狠狠久久| 成人精品视频一区二区三区尤物| 制服视频三区第一页精品| 亚洲激情欧美激情| 懂色av中文一区二区三区| 91精品国产综合久久精品| 亚洲免费资源在线播放| 国产成人免费视频网站高清观看视频| 欧美色视频一区| 亚洲三级电影网站| 国产精品18久久久久久久久| 欧美日韩高清影院| 亚洲免费伊人电影| 成人综合激情网| 久久精品视频一区二区| 日本少妇一区二区| 欧美日韩国产片| 亚洲一区在线观看免费观看电影高清| 国产成人精品影院| www亚洲一区| 久久草av在线| 日韩一区二区麻豆国产| 香蕉成人伊视频在线观看| 在线视频一区二区三区| 国产精品另类一区| 成人综合在线观看| 国产亚洲va综合人人澡精品| 蜜桃精品在线观看| 日韩欧美高清dvd碟片| 午夜精品福利一区二区三区av| 色视频成人在线观看免| 亚洲女子a中天字幕| gogo大胆日本视频一区| 中文字幕欧美一| 91在线观看视频| 亚洲日本一区二区| 99re免费视频精品全部| 国产精品毛片高清在线完整版| 高清成人在线观看| 日本一区二区三区电影| 高清国产一区二区三区| 欧美国产禁国产网站cc| 成人动漫一区二区| 亚洲素人一区二区| 在线观看日韩一区| 亚洲18女电影在线观看| 欧美二区三区91| 蜜臀av一区二区在线免费观看| 日韩欧美一级二级三级| 激情欧美一区二区| 国产日韩欧美精品在线| www.亚洲国产| 亚洲电影激情视频网站| 欧美一级久久久| 国产麻豆成人精品| 专区另类欧美日韩| 欧美午夜电影网| 蜜桃av一区二区在线观看| 久久先锋资源网| 暴力调教一区二区三区| 亚洲成人免费在线| 26uuu欧美| 91免费视频大全| 日韩二区三区在线观看| 久久亚洲精华国产精华液| 91蜜桃婷婷狠狠久久综合9色| 亚洲一区二区三区视频在线播放| 欧美精品久久一区| 国产高清视频一区| 一区二区高清视频在线观看| 欧美一区二区三区免费大片| 国产不卡视频在线播放| 亚洲午夜激情av| 国产色爱av资源综合区| 色综合久久久久久久久|