主要实现了二叉树的一般用法,可能会有些错误,还望纠正一下。 package structure.tree;public class Node { public int idata; public double ddata; public Node leftNode; public Node rightNode; public Node() { } public void display() {// отй╬╫з╣Ц System.out.print({); System.out.print(idata); System.out.print(,); System.out.print(ddata); System.out.print(}); }} ...
用php代码实现的冒泡排序,有需要的朋友,可以参考学习下。冒泡排序(BubbleSort) 依次比较相邻的两个数,将小数放在前面,大数放在后面。 即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。 然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。 至此第一趟结束,将最大的数放到了最后。 在第二趟:仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使...
为大家介绍php插入排序的实现算法与代码,有需要的朋友,可以参考学习下。插入排序,就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据。 算法描述: ⒈ 从第一个元素开始,该元素可以认为已经被排序 ⒉ 取出下一个元素,在已经排序的元素序列中从后向前扫描 ⒊ 如果该元素(已排序)大于新元素,将该元素移到下一位置 ⒋ 重复步骤3,直到找到已排序的元素小于或者等于新元素的位置 ⒌ 将新元素插...
为大家介绍php 选择排序的一个代码示例,有需要的朋友,可以参考下。与php 冒泡排序相比,选择排序(Selection sort)是一种简单直观的排序算法。工作原理: 首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。 以此类推,直到所有元素均排序完毕。$arr[$j]){$valmin=$arr[$j];$minkey=$j;}}//进行交换$temp=$arr[$i];$arr[$i]=$arr[$...
本文介绍下,php实现的洗牌算法的代码一例,有需要的朋友,可以研究学习下。代码如下:挺简单的一段代码,主要是帮助大家理解洗牌算法,希望对您有所帮助。
/*** php 冒泡排序* edit by bbs.it-home.org*/ function maopao($arr){ $c = count($arr); $t = 0; for($i=0;$i for($j=$i+1;$j if($arr[$i] { $t = $arr[$i]; $arr[$i] = $arr[$j]; $arr[$j] = $t; } } } return $arr; }//调用...
// 冒泡排序function BubbleSort($arr) { // 获得数组总长度 $num = count($arr); // 正向遍历数组 for ($i = 1; $i // 反向遍历 for ($j = $num - 1; $j >= $i ; $j--) { // 相邻两个数比较 if ($arr[$j] // 暂存较小的数 $iTemp = $arr[$j-1]; // 把较大的放前面 $arr[$j-1] = $arr[$j]; // 较小...
//php生成短网址function code62($x) {$show = '';while($x > 0) { $s = $x % 62; if ($s > 35) { $s = chr($s+61); } elseif ($s > 9 && $s $s = chr($s + 55); } $show .= $s; $x = floor($x/62);}return $show;} function shorturl($url) { $url = crc32($url); $result = sprintf("%u", $url); //return $url; //return $result; return code62($result);}echo shorturl("http://bbs.it-home.org/tags...
function DJBHash($str) // 0.22{$hash = 0;$n = strlen($str);for ($i = 0; $i <$n; $i++){$hash += ($hash <<5 ) + ord($str[$i]);}return $hash % 701819;} function ELFHash($str) // 0.35{$hash = $x = 0;$n = strlen($str); for ($i = 0; $i <$n; $i++){$hash = ($hash <<4) + ord($str[$i]);if(($x = $hash & 0xf0000000) != 0){$hash ^= ($x>> 24);$hash &= ~$x;}}return $hash % 701819;} function JSHash($str) // 0.23{...
//冒泡排序函数 //本函数使用引用,避免内存消耗//整理:bbs.it-home.orgfunction &bubble(&$arr){ $count=count($arr); if($count>1){ for($i=0;$i for($j=$count-1;$j>=$i;$j--){ if($arr[$j-1]>$arr[$j]){ $temp=$arr[$j-1]; $arr[$j-1]=$arr[$j]; $arr[$j]=$temp; } } ...
//选择排序功能函数 //使用引用,减少内存消耗//整理:bbs.it-home.orgfunction &select(&$arr){ $count=count($arr); if($count>1){ for($i=0;$i $k=$i; for($j=$i+1;$j if($arr[$j] $k=$j; } } if($k!=$i){ $tmp=$arr[$k]; $arr[$k]=$arr[$i]; ...
<?php/** * 全概率计算 * * @param array $p array(a=>0.5,b=>0.2,c=>0.4) * @return string 返回上面数组的key */function random($ps){ static $arr = array(); $key = md5(serialize($ps)); if (!isset($arr[$key])) { $max = array_sum($ps); foreach ($ps as $k=>$v) { $v = $v / $max * 10000; for ($i=0; $i<$v; $i++) $arr[$key][] = $k; } } return $arr[$key...
/** * 插入排序 * @param Array $a 无序集合 * @return Array 有序集合 */function insertSort($a) { $temp; $i; $j; $size_a = count($a); # 从第二个元素开始 for ($i = 1; $i if ($a[$i] $j = $i; # 保存当前元素的位置 $temp = $a[$i]; # 当前元素的值 # 比较左边的元素,如果找到比自己更小的,向右移动元素,否则插入元素到当前位置 while($j>0 && $temp$a[$j] = $a[$j-1];$j--; } # 插入元素 $a[$j] = $t...
ext/standard/php_array.hhttps://github.com/php/php-src/blob/master/ext/standard/php_array.h #ifndef PHP_ARRAY_H#define PHP_ARRAY_HPHP_MINIT_FUNCTION(array);PHP_MSHUTDOWN_FUNCTION(array);PHP_FUNCTION(ksort);PHP_FUNCTION(krsort);PHP_FUNCTION(natsort);PHP_FUNCTION(natcasesort);PHP_FUNCTION(asort);PHP_FUNCTION(arsort);PHP_FUNCTION(sort);PHP_FUNCTION(rsort);PHP_FUNCTION(usort);PHP_FUNCTION(uasort);PHP_...
function quicksortX(&$seq){ $stack = array($seq); $sort = array(); while ($stack) { $arr = array_pop($stack); if(count($arr) <= 1){ if (count($arr) == 1) { $sort[] = &$arr[0]; } continue; } $k = $arr[0]; $x = array(); $y = array(); $_size = count($arr); for ($i = 1; $i < $_size; $i++) {...