Advertisement
Guest User

Untitled

a guest
Nov 24th, 2015
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.FileReader;
  3. import java.io.IOException;
  4. import java.util.ArrayList;
  5. import java.util.List;
  6. import java.lang.*;
  7.  
  8. public class DSAP3 {
  9.  
  10. ArrayList<ArrayList<Integer>> data = new ArrayList<ArrayList<Integer>>();
  11.  
  12. public class Node {
  13. int id;
  14. int val;
  15. ArrayList<Node> app = new ArrayList<Node>();
  16.  
  17. private void add (Node mag) {
  18. app.add(mag);
  19. }
  20.  
  21. private Node getChild (int pos) {
  22. return app.get(pos);
  23. }
  24. }
  25.  
  26. public Node addMag(int x) {
  27. Node temp = new Node();
  28. temp.id = data.get(x).get(0);
  29. temp.val = data.get(x).get(1);
  30. // System.out.print(temp.id + " ");
  31. // System.out.println(temp.val + " ");
  32. for (int c = 2; c < data.get(x).size(); c++) {
  33. temp.add(addMag(data.get(x).get(c)-1));
  34. }
  35. // System.out.print(temp.id + " ");
  36. // System.out.println(temp.val + " ");
  37. // System.out.print("\n");
  38. return temp;
  39. }
  40.  
  41. public void load(String file_path) {
  42. //read txt file
  43. BufferedReader br = null;
  44.  
  45. try {
  46.  
  47. int h = 0;
  48.  
  49. //read in file
  50. String sCurrentLine;
  51.  
  52. br = new BufferedReader(new FileReader(file_path));
  53. h = Integer.parseInt(br.readLine());
  54.  
  55. //read lines
  56. int i = 0;
  57. ArrayList<Integer> apps = new ArrayList<Integer>();
  58. String str;
  59. String[] stra;
  60.  
  61. while ((sCurrentLine = br.readLine()) != null) {
  62. str = sCurrentLine.replaceAll("\\D+"," ");
  63. str = str + " x";
  64. stra = str.split(" +");
  65.  
  66. while (!(stra[i]).equals("x")) {
  67. apps.add(Integer.parseInt(stra[i]));
  68. i++;
  69. }
  70. data.add(apps);
  71. apps = new ArrayList<Integer>();
  72. i = 0;
  73. }
  74.  
  75. Node head = addMag(0);
  76.  
  77. System.out.println(head.id + " " + head.val);
  78.  
  79. System.out.println(head.getChild(0).val);
  80. System.out.println(head.getChild(1).val);
  81. System.out.println(head.getChild(2).val);
  82. System.out.println(head.getChild(1).getChild(1).val);
  83.  
  84. } catch (IOException e) {
  85. e.printStackTrace();
  86. }
  87. }
  88.  
  89. public static void main(String[] args) {
  90. DSAP3 dsap3 = new DSAP3();
  91. dsap3.load(args[0]);
  92. }
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement