UDUWGraph.java 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package com.example.data_structure.domain;
  2. import org.springframework.stereotype.Component;
  3. import java.util.ArrayList;
  4. @Component
  5. public class UDUWGraph {
  6. private int nodeNum;
  7. private int edgeNum;
  8. private ArrayList<ArrayList<Integer>> content;
  9. public UDUWGraph(ArrayList<ArrayList<Integer>> content) {
  10. this.content = content;
  11. this.nodeNum=content.size();
  12. int edgeNum=0;
  13. for(int i=1;i<nodeNum;i++){
  14. for(int j=0;j<i;j++){
  15. if(content.get(i).get(j)!=0){
  16. edgeNum++;
  17. };
  18. }
  19. }
  20. this.edgeNum=edgeNum;
  21. }
  22. //getter
  23. public UDUWGraph() {
  24. }
  25. public int getNodeNum() {
  26. return nodeNum;
  27. }
  28. public int getEdgeNum() {
  29. return edgeNum;
  30. }
  31. public ArrayList<ArrayList<Integer>> getContent() {
  32. return content;
  33. }
  34. //setter
  35. public void setNodeNum(int nodeNum) {
  36. this.nodeNum = nodeNum;
  37. }
  38. public void setEdgeNum(int edgeNum) {
  39. this.edgeNum = edgeNum;
  40. }
  41. public void setContent(ArrayList<ArrayList<Integer>> content) {
  42. this.content = content;
  43. }
  44. public String toMatrixString(){
  45. String re="nodeNum: "+nodeNum+"\nedgeNum: "+edgeNum+"\n";
  46. for(int i=0;i<nodeNum;i++){
  47. for(int j=0;j<nodeNum;j++){
  48. re=re+content.get(i).get(j)+" ";
  49. }
  50. re=re+"\n";
  51. }
  52. return re;
  53. }
  54. @Override
  55. public String toString() {
  56. return "UDUWGraph{" +
  57. "nodeNum=" + nodeNum +
  58. ", edgeNum=" + edgeNum +
  59. ", content=" + content +
  60. '}';
  61. }
  62. }