ugrás a tartalomhoz

Archívum - Feb 22, 2012

Kiegyensúlyozott-e az adott bináris fa

morocztamas · 2012. Feb. 22. (Sze), 16.50
Egy bináris fáról, hogyan tudom megállapítani, hogy kiegyensúlyozott-e és aztán azzá tenni?
Eddig a forrás ilyen:
  1. package binfa;  
  2.   
  3. import java.io.BufferedReader;  
  4. import java.io.FileNotFoundException;  
  5. import java.io.FileReader;  
  6. import java.util.Scanner;  
  7.   
  8. public class Binfa {  
  9.   public static void main(String[] args) throws FileNotFoundException {  
  10.     RendezettBinfa rbf2 = new RendezettBinfa();  
  11.     Scanner s = null;  
  12.     try {  
  13.       s = new Scanner (  
  14.               new BufferedReader (  
  15.                       new FileReader ("szamok.txt")));  
  16.       while (s.hasNextInt()) {  
  17.         rbf2.addElem(s.nextInt());  
  18.       }  
  19.     } finally {  
  20.       if (s != null) {  
  21.         s.close();  
  22.       }  
  23.     }  
  24.     System.out.println(rbf2.inorder());  
  25.     System.out.print("Magassága: ");  
  26.     System.out.println(rbf2.height());  
  27.     System.out.println();  
  28.   
  29.     /**/  
  30.       
  31.     RendezettBinfa rbf = new RendezettBinfa();  
  32.     rbf.addElem(4);  
  33.     rbf.addElem(2);  
  34.     rbf.addElem(1);  
  35.     rbf.addElem(3);  
  36.     rbf.addElem(6);  
  37.     rbf.addElem(5);  
  38.     rbf.addElem(7);  
  39.     System.out.println(rbf); // inorder eljárás, mert a gyökér a bal- és a jobbrészfa kiírása között van   
  40.     System.out.print("Inorder: ");  
  41.     System.out.println(rbf.inorder());  
  42.     System.out.print("Postorder: ");  
  43.     System.out.println(rbf.postorder());  
  44.     System.out.print("Magassága: ");  
  45.     System.out.println(rbf.height());  
  46.     System.out.print("Preorder: ");  
  47.     System.out.println(rbf.preorder());  
  48.       
  49.     /* 
  50.     Csucs cs = new Csucs(5); 
  51.     Csucs bcs = new Csucs(6); 
  52.     Csucs jcs = new Csucs(7); 
  53.     cs.addLeft(bcs); 
  54.     cs.addRight(jcs); 
  55.     System.out.println(cs); // *.toString 
  56.     cs.setElem(1); 
  57.     cs.bcs.setElem(2); 
  58.     jcs.setElem(3); 
  59.     System.out.println(cs); 
  60.     // System.out.println(jcs); 
  61.     */  
  62.   }  
  63. }  
[colorer=javascript]package binfa;

public class Csucs {
protected int elem;
Csucs bcs, jcs;

public Csucs (int elem) {
this.e

JavaScript design patternek

Bártházi András · 2012. Feb. 22. (Sze), 10.17

A design patternek, vagyis magyarul a tervezési minták olyan építőkockák, melyek a gyakran előforduló, tipikus problémákra kínálnak jól működő, egységes, kalapból előhúzható megoldásokat. A feladatok mögött fel lehet fedezni mintázatokat, melyeket végül mindig ugyanúgy lehet a legjobban megoldani - ezen megoldások gyűjtőnevéről beszélünk. A bejegyzésben pár JavaScript tervezési mintáról írok, illetve adok egy pár linket is a témában.