您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息

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

2024/4/27 22:04:59发布4次查看
复制代码 代码如下:
self::maxsize) {
echo '对不起,数组的长度'.$n.'超出了内存空间!'.self::maxsize;
} else if($necho '异常,长度不能为负数。';
} else if($n==0) {
echo '
....你创建了一张空表,数组长度为0....
';
$this->arr=$arr;
$this->length=$n;
}else{
echo '
....成功创建一张表....
';
$this->arr=$arr;
$this->length=$n;
}
}
/*
*按位查找,返回查找到的值
* @ruturn string;
* @param int $n 查找的位置
*/
function findvalue($n) {
if($n>$this->length||$nreturn '输入的位置'.$n.'不正确,请在1到'.$this->length.'的范围内';
}
return '你要找的第'.$n.'位的值为'.$this->arr[$n-1];
}
/*
*按值查找,返回查找到的位置
* @ruturn string;
* @param int $n 查找的值
*/
function findsite($n) {
for($i=0;$ilength;$i++){
if($this->arr[$i]==$n){
$b=$i+1;
return '你要找的值'.$n.'对应的位置为'.$b;
}else{
$v=false;
}
}
if(!$v){
return '你所找的值'.$n.'不存在';
}
}
/*
*在选定的位置处插入某个值
* @ruturn array;
* @param int $i 插入位置
* @param int $v 插入的值
*/
function insertvalue($i,$v) {
if($iself::maxsize){
echo '插入的位置'.$i.'不正确,请在1到'.self::maxsize.'的范围内';
return ;
}
for($h=$this->length;$h>=$i;$h--){
$this->arr[$h]=$this->arr[$h-1];
}
if($i>$this->length){
$this->arr[$this->length]=$v;
}else{
$this->arr[$i-1]=$v;
}
$this->length++;
return $this->arr;
}
/*
*在选定的位置删除某个值
* @ruturn array;
* @param int $i 位置
*/
function deletevalue($i) {
if($i$this->length){
echo '选定的位置'.$i.'不正确,请在1到'.$this->length.'的范围内';
return ;
}
for($j=$i;$jlength;$j++){
$this->arr[$j-1]=$this->arr[$j];
}
unset($this->arr[$this->length-1]);
$this->length--;
return $this->arr;
}
function __destruct(){
if($this->length==0){
echo '
...销毁一张空表...
';
}else{
echo '
...成功销毁一张表..
';
}
}
}
//下面是使用案例
$arr=array(10,125,123,1,4);
$n=5;
$linearlist=new linearlist($arr, $n);
echo $linearlist->findvalue(5).'
';
echo $linearlist->findsite(4).'
';
echo '';
print_r($linearlist->insertvalue(20,300));
echo '
';
echo '';
print_r($linearlist->deletevalue(1));
echo '
';
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录