PHP 数据结构 算法 三元组 Triplet


Posted in PHP onJuly 02, 2011
<?php 
/** 
* 三元组 Triplet 
* 
*/ 
class Triplet 
{ 
private $_data = null; 
// 初始化三元组 
public function init($val1,$val2,$val3) 
{ 
$this->_data[0] = $val1; 
$this->_data[1] = $val2; 
$this->_data[2] = $val3; 
return true; 
} 
// 销毁三元组 
public function destroy() 
{ 
unset($this->_data); 
return true; 
} 
// 返回第$key的值 
public function get($key) 
{ 
if($key < 1 || $key > 3) return false; 
return $this->_data[$key - 1]; 
} 
// 设置第$key元的值为$val 
public function put($key,$val) 
{ 
if($key < 1 || $key > 3) return false; 
$this->_data[$key - 1] = $val; 
return true; 
} 
// 是否按升序排序 
public function isAscending() 
{ 
return ($this->_data[0] <= $this->_data[1]) && ($this->_data[1] <= $this->_data[2]); 
} 
// 是否按降序排序 
public function isDescending() 
{ 
return ($this->_data[0] >= $this->_data[1]) && ($this->_data[1] >= $this->_data[2]); 
} 
// 获取最大值 
public function max() 
{ 
return ($this->_data[0] >= $this->_data[1])? ($this->_data[0] >= $this->_data[2])? $this->_data[0] : $this->_data[2] : ($this->_data[1] >= $this->_data[2])? $this->_data[1] : $this->_data[2]; 
} 
// 获取最小值 
public function min() 
{ 
return ($this->_data[0] <= $this->_data[1])? ($this->_data[0] <= $this->_data[2])? $this->_data[0] : $this->_data[2] : ($this->_data[1] <= $this->_data[2])? $this->_data[1] : $this->_data[2]; 
} 
} 
// 
$objTriplet = new Triplet(); 
echo "init:";var_dump($objTriplet->init(1,2,3)); echo "<br/>"; 
echo "get 1:";var_dump($objTriplet->get(1)); echo "<br/>"; 
echo "get 4:";var_dump($objTriplet->get(4)); echo "<br/>"; // false 
echo "put 3,4:";var_dump($objTriplet->put(3,4)); echo "<br/>"; 
echo "max:";var_dump($objTriplet->max()); echo "<br/>"; 
echo "min:";var_dump($objTriplet->min()); echo "<br/>"; 
echo "isAscending:";var_dump($objTriplet->isAscending()); echo "<br/>"; 
echo "isDescending:";var_dump($objTriplet->isDescending()); echo "<br/>"; 
?>
PHP 相关文章推荐
关于PHP中操作MySQL数据库的一些要注意的问题
Oct 09 PHP
用Zend Encode编写开发PHP程序
Oct 09 PHP
数据库的日期格式转换
Oct 09 PHP
php实现mysql同步的实现方法
Oct 21 PHP
joomla内置的表单验证功能使用方法
Jun 11 PHP
判断php数组是否为索引数组的实现方法
Jun 13 PHP
PHP设置图片文件上传大小的具体实现方法
Oct 11 PHP
php实现的Captcha验证码类实例
Sep 22 PHP
使用PHP和JavaScript判断请求是否来自微信内浏览器
Aug 18 PHP
PHP的PDO大对象(LOBs)
Jan 27 PHP
laravel执行php artisan migrate报错的解决方法
Oct 09 PHP
mac pecl 安装php7.1扩展教程
Oct 17 PHP
php中批量删除Mysql中相同前缀的数据表的代码
Jul 01 #PHP
PHP中error_reporting()函数的用法(修改PHP屏蔽错误)
Jul 01 #PHP
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
Jul 01 #PHP
Can't create/write to file 'C:\WINDOWS\TEMP\...MYSQL报错解决方法
Jun 30 #PHP
在php中判断一个请求是ajax请求还是普通请求的方法
Jun 28 #PHP
php编程实现获取excel文档内容的代码实例
Jun 28 #PHP
PHP学习笔记之数组篇
Jun 28 #PHP
You might like
PHP文件读写操作之文件读取方法详解
2011/01/13 PHP
php校验表单检测字段是否为空的方法
2015/03/20 PHP
PHP文件缓存类实现代码
2015/10/26 PHP
yii2控制器Controller Ajax操作示例
2016/07/23 PHP
浅谈PHP表单提交(POST&amp;GET&amp;URL编/解码)
2017/04/03 PHP
记录Yii2框架开发微信公众号遇到的问题及解决方法
2018/07/20 PHP
TNC vs IO BO3 第一场2.13
2021/03/10 DOTA
js判断设备是否为PC并调整图片大小
2014/02/12 Javascript
Js实现滚动变色的文字效果
2014/06/16 Javascript
jQuery实现的经典竖向伸缩菜单效果代码
2015/09/24 Javascript
jQuery打字效果实现方法(附demo源码下载)
2015/12/18 Javascript
js生成随机数(指定范围)的实例代码
2016/07/10 Javascript
js绘制购物车抛物线动画
2020/11/18 Javascript
基于BootStrap栅格栏系统完成网站底部版权信息区
2016/12/23 Javascript
老生常谈jquery中detach()和remove()的区别
2017/03/02 Javascript
vue2.x+webpack快速搭建前端项目框架详解
2017/11/30 Javascript
js实现按钮开关单机下拉菜单效果
2018/11/22 Javascript
深入理解Vue.js轻量高效的前端组件化方案
2018/12/10 Javascript
微信小程序登录session的使用
2019/03/17 Javascript
微信小程序常用赋值方法小结
2019/04/30 Javascript
在Linux系统上通过uWSGI配置Nginx+Python环境的教程
2015/12/25 Python
深入理解python中的atexit模块
2017/03/07 Python
Python读取MRI并显示为灰度图像实例代码
2018/01/03 Python
Python+Turtle动态绘制一棵树实例分享
2018/01/16 Python
Pandas透视表(pivot_table)详解
2019/07/22 Python
降低python版本的操作方法
2020/09/11 Python
一文带你掌握Pyecharts地理数据可视化的方法
2021/02/06 Python
高级护理实习生自荐信
2013/09/28 职场文书
超市仓管员岗位职责
2014/04/07 职场文书
房屋买卖授权委托书
2014/09/27 职场文书
民主生活会汇报材料
2014/12/15 职场文书
承诺书模板大全
2015/05/04 职场文书
浅谈Python 中的复数问题
2021/05/19 Python
Java输出Hello World完美过程解析
2021/06/13 Java/Android
React实现动效弹窗组件
2021/06/21 Javascript
Python中的pprint模块
2021/11/27 Python