91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3.89 KB
    文件類型: .rar
    金幣: 1
    下載: 1 次
    發布日期: 2024-11-18
  • 語言: Java
  • 標簽: java??????數據結構??

資源簡介

把字母表示的圖狀數據結構轉換為樹狀數據結構
采用DefaultMutableTreeNode類的方式建立一個圖狀數據結構,頂點為字母A、B、C等,你也可以自己設計。可以幫助你把一個復雜的網狀關系變成一個條理化的樹狀關系,并通過一個Tree顯示出來。很不可思議吧?看看就知道了!

資源截圖

代碼片段和文件信息

import?java.awt.Container;
import?java.awt.event.WindowAdapter;
import?java.awt.event.WindowEvent;
import?java.util.ArrayList;
import?java.util.TreeMap;
import?java.util.TreeSet;
import?javax.swing.Jframe;
import?javax.swing.JScrollPane;
import?javax.swing.JTree;
import?javax.swing.tree.*;
import?javax.swing.tree.DefaultMutableTreeNode;
import?java.util.*;
import?javax.swing.tree.*;


public?class?ChangeGraphtoTree?{

????public?ChangeGraphtoTree()?{
????}

????public?static?void?main(String[]?args)?{
????????Ordered?ord?=?new?Ordered();
????????GraphVertex?gpnode?=?new?GraphVertex();
????????IDlinkValue?linkvalue?=?new?IDlinkValue();
????????//通過有序偶對建立圖狀數據結構,并分配長度屬性
????????new?Ordered(“A“?“B“?new?OrderValue(1));
????????new?Ordered(“B“?“D“?new?OrderValue(2));
????????new?Ordered(“D“?“E“?new?OrderValue(3));
????????new?Ordered(“E“?“F“?new?OrderValue(4));
????????new?Ordered(“F“?“A“?new?OrderValue(5));

????????new?Ordered(“A“?“C“?new?OrderValue(6));
????????new?Ordered(“C“?“D“?new?OrderValue(7));

????????new?Ordered(“A“?“D“?new?OrderValue(2));
????????new?Ordered(“D“?“A“?new?OrderValue(56));

????????//new?Ordered(“B““E“);
????????//new?Ordered(“D““F“);
????????new?Ordered(“E“?“B“?null);

????????new?Ordered(“C“?“G“?null);
????????new?Ordered(“E“?“H“?null);
????????//把圖狀結構轉化成路徑數組和決策樹,并把路徑數組輸出到控制臺。
????????GraphVertex?A?=?GraphVertex.GraphNameMap.get(“A“);
????????A.GraphToTree(A);
????????//根據需要優化樹的分支
????????A.optimize(?A.LeafList);
????????//顯示優化標記后的樹型結構
????????Jframe?f?=?new?Jframe(“圖狀數據結構(ABC)“);
????????Container?contentpane?=?f.getContentPane();
????????JTree?treeABC?=?new?JTree((TreeNode)?(A.TreeRoot));
????????JScrollPane?scrollpane?=?new?JScrollPane();
????????scrollpane.setViewportView(treeABC);
????????contentpane.add(scrollpane);
????????f.pack();
????????f.setVisible(true);
????????f.setBounds(300?30?600?600);
????????f.addWindowListener(new?WindowAdapter()?{
????????????public?void?windowClosing(WindowEvent?e)?{
????????????????System.exit(0);
????????????}
????????});
????}
??}

//ChangeGraphtoTree.java??????//本程序用NetBeans?IDE?7.2?開發

//頂點對象
class?GraphVertex?{
????//1,圖狀數據結構定義
????//起點(弧起點)清單
????public?ArrayList?StartPointList?=?new?ArrayList();
????//目標點(弧終點)清單
????public?ArrayList?EndPointList?=?new?ArrayList();
????public?GraphVertexValue?GVV;//頂點的附加屬性
????public?static?TreeMap?GraphNameMap;//頂點鍵-值對集合
????private?static?ArrayList?VertexStack;//當前節點數組堆棧
????//3,策略樹相關變量
????public?static?UserTreeNode?TreeRoot;//樹的根節點
????public?static?ArrayList?LeafList;//樹的葉節點列表
????private?static?ArrayList?TreeStack;//樹的當前節點路徑堆棧
????private?static?UserTreeNode?aVertexNode;//樹的當前節點
????private?static?int?linkID;//用于對葉節點編號
????public?static?final?boolean?CONTINUE?=?true;
????public?static?final?boolean?BREAK?=?false;

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????????48??2013-06-03?20:46??java_pushone.bat

?????文件?????????41??2013-06-03?20:38??javac_change.bat

?????文件??????14020??2013-06-03?20:45??ChangeGraphtoTree.java

-----------?---------??----------?-----??----

????????????????14109????????????????????3


評論

共有 條評論