예제 #1
0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Interface de Test</title>
<link rel="stylesheet" type="text/css" href="view.css" media="all">
<script type="text/javascript" src="view.js"></script>
<script type="text/javascript" src="userscript.js"></script>

</head>
<body id="main_body" >

<?php 
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(-1);
require_once 'class.binarytree.php';
require_once 'class.binarynode.php';
echo "Hell yeah!<br />";
$testtree = new BinaryTree();
$testtree->root = new BinaryNode('+');
$testtree->root->left = new BinaryNode("coucou");
$testtree->root->right = new BinaryNode(3);
$testtree->traverse();
?>


</body>
 function ranges()
 {
     $groups = array();
     $Indexes = new BinaryTree();
     if ($this->range === null) {
         return $groups;
     }
     foreach (func_get_args() as $number_set) {
         if (is_int($number_set)) {
             $number_set = intval($number_set);
             if ($number_set < 0) {
                 $assigned_range = ceil(abs($number_set) / $this->range) * -1;
             } else {
                 $assigned_range = ceil(abs($number_set) / $this->range);
             }
             $Indexes->insert($assigned_range);
             if (!isset($groups[$assigned_range])) {
                 $groups[$assigned_range] = new BinaryTree();
             }
             $groups[$assigned_range]->insert($number_set);
         } else {
             throw new InvalidArgumentException('This method only accpets integers:' . $number_set);
         }
     }
     $array_indexes = $Indexes->traverse();
     $returned_array = array();
     print_r($array_indexes);
     print_r(array_keys($groups));
     foreach ($array_indexes as $index) {
         $returned_array[] = $groups[$index]->traverse();
     }
     return $returned_array;
 }