• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php线性表顺序存储实现代码(增删查改)_php技巧

php 搞代码 4年前 (2022-01-26) 20次浏览 已收录 0个评论
 <BR><?php <BR>/* <BR>*文件名:linearList.php <BR>* 功能:数据结构线性表的顺序存储实现 <BR>* author:黎锦焕 <BR>* @copyright:www.drw1314.com <BR>*/ <BR>class linearList { <BR>private $arr; <BR>private $length; <BR>const MAXSIZE=100; <BR>/* <BR>*构造函数,判断空表还是飞空表,并且进行实例化 <BR>* @param array $arr 输入的数组 <BR>* @param int $n 输入数组的长度 <BR>* @ruturn void; <BR>*/ <BR>function __construct($arr,$n) { <BR>if($n>self::MAXSIZE) { <BR>echo '对不起,数组的长度'.$n.'超出了内存空间!'.self::MAXSIZE; <BR>} else if($n<0) { <BR>echo '异常,长度不能为负数。'; <BR>} else if($n==0) { <BR>echo '<br />....你创建了一张空表,数组长度为0....<br /><br />'; <BR>$this->arr=$arr; <BR>$this->length=$n; <BR>}else{ <BR>echo '<br />.<p style="color:transparent">。本文来源gao!%daima.com搞$代*!码网1</p><cite>搞代gaodaima码</cite>...成功创建一张表....<br /><br />'; <BR>$this->arr=$arr; <BR>$this->length=$n; <BR>} <BR>} <BR>/* <BR>*按位查找,返回查找到的值 <BR>* @ruturn string; <BR>* @param int $n 查找的位置 <BR>*/ <BR>function findValue($n) { <BR>if($n>$this->length||$n<1){ <BR>return '输入的位置'.$n.'不正确,请在1到'.$this->length.'的范围内'; <BR>} <BR>return '你要找的第'.$n.'位的值为'.$this->arr[$n-1]; <BR>} <BR>/* <BR>*按值查找,返回查找到的位置 <BR>* @ruturn string; <BR>* @param int $n 查找的值 <BR>*/ <BR>function findSite($n) { <BR>for($i=0;$ilength;$i++){ <BR>if($this->arr[$i]==$n){ <BR>$b=$i+1; <BR>return '你要找的值'.$n.'对应的位置为'.$b; <BR>}else{ <BR>$v=false; <BR>} <BR>} <BR>if(!$v){ <BR>return '你所找的值'.$n.'不存在'; <BR>} <BR>} <BR>/* <BR>*在选定的位置处插入某个值 <BR>* @ruturn array; <BR>* @param int $i 插入位置 <BR>* @param int $v 插入的值 <BR>*/ <BR>function insertValue($i,$v) { <BR>if($iself::MAXSIZE){ <BR>echo '插入的位置'.$i.'不正确,请在1到'.self::MAXSIZE.'的范围内'; <BR>return ; <BR>} <BR>for($h=$this->length;$h>=$i;$h--){ <BR>$this->arr[$h]=$this->arr[$h-1]; <BR>} <BR>if($i>$this->length){ <BR>$this->arr[$this->length]=$v; <BR>}else{ <BR>$this->arr[$i-1]=$v; <BR>} <BR>$this->length++; <BR>return $this->arr; <BR>} <BR>/* <BR>*在选定的位置删除某个值 <BR>* @ruturn array; <BR>* @param int $i 位置 <BR>*/ <BR>function deleteValue($i) { <BR>if($i$this->length){ <BR>echo '选定的位置'.$i.'不正确,请在1到'.$this->length.'的范围内'; <BR>return ; <BR>} <BR>for($j=$i;$jlength;$j++){ <BR>$this->arr[$j-1]=$this->arr[$j]; <BR>} <BR>unset($this->arr[$this->length-1]); <BR>$this->length--; <BR>return $this->arr; <BR>} <BR>function __destruct(){ <BR>if($this->length==0){ <BR>echo '<br />...销毁一张空表...<br />'; <BR>}else{ <BR>echo '<br />...成功销毁一张表..<br />'; <BR>} <BR>} <BR>} <BR>//下面是使用案例 <BR>$arr=array(10,125,123,1,4); <BR>$n=5; <BR>$linearList=new linearList($arr, $n); <BR>echo $linearList->findValue(5).'<br />'; <BR>echo $linearList->findSite(4).'<br />'; <BR>echo '<pre class="prettyprint linenums">'; <BR>print_r($linearList->insertValue(20,300)); <BR>echo '

‘;
echo ‘

'; <BR>print_r($linearList->deleteValue(1)); <BR>echo '

‘;


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php线性表顺序存储实现代码(增删查改)_php技巧
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址