View Single Post
Old 13-12-2007, 16:54   #7
f0/\/2!3
Senior Member
 
L'Avatar di f0/\/2!3
 
Iscritto dal: Apr 2004
Città: Ascoli Piceno
Messaggi: 742
Codice:
package unicam.aaftx.operators;

import java.util.Vector;

/*Classe Node*/
public class Node
{
 Node left;
 Node right;
 Object data;
 
 public Node CreateNode(Node dx, Node sx, Object newData)
 {
  right = dx;
  left = sx;
  data = newData;
  return this;
 }
 
 public void CreateRoot(int i, Vector<Object> complexAssist)
 {
  Node root = CreateNode (null, null, complexAssist.get(i));
  CreateTree(i, complexAssist, root);
 }
 
 public void CreateTree(int i, Vector<Object> complexAssist, Node root)
 {
  ComplexSelectionCondition csc;
  this.right = new Node();
  this.right.CreateNode(null, null, complexAssist.get(i + 1));
  if (i - 2 < 0)
  {
      this.left = new Node();
      this.left.CreateNode(null, null, complexAssist.get(i - 1));
      csc = new ComplexSelectionCondition(root);
  }
  else
  {
   i = i - 2;
   this.left = new Node();
   this.left.CreateNode(null, null, complexAssist.get(i));
   this.left.CreateTree(i, complexAssist, root);
  }
 }
}
EDIT:

OK così funziona!!!

Ora il problema è considerare le parentesi... Un'espressione del tipo: a AND (b OR c) AND (d AND e) ci manda assolutamente in crisi...
__________________
Toshiba Satellite A500-14F : Intel® Core™2 Duo P8700; ATI Mobility Radeon™ HD 4650; TruBrite® HD TFT High Brightness display 16.0"; 4,096 MB DDR2 RAM; HD 320 GB; Wi-Fi+BT 802.11a/g/Draft-N; Built-in Harman Kardon® stereo speakers; Touch Pad with Multi-Touch Control; TV Tuner ibrido digitale (DVB-T) e analogico; DVD Super Multi drive; Windows 7 Professional

Ultima modifica di f0/\/2!3 : 14-12-2007 alle 10:42.
f0/\/2!3 è offline   Rispondi citando il messaggio o parte di esso