php 顺序结构,顺序存储结构php实现
// php實現順序存儲
$arr = [1,3];
ListInsert($arr, 2, 6);
var_dump($arr);
$e = GetElem($arr, 2);
var_dump($e);
// 順序存儲結構的插入
function ListInsert(Array &$arr, int $i, int $e){
$count = count($arr);
if($i < 1 || $i > $count + 1){
throw new Exception(‘數據非法‘);
}
// 將要插入位置后數據元素向后移動一位
for($k = $count - 1; $k >= $i - 1; $k--){
$arr[$k + 1] = $arr[$k];
}
// 將新元素插入
$arr[$i - 1] = $e;
ListDelete($arr, 2);
var_dump($arr);
// 總結:可以快速取,但插入和刪除需要移動大量元素
}
// 順序存儲結構的刪除
function ListDelete(Array &$arr, int $i){
$count = count($arr);
if($i < 1 || $count === 0 || $i > $count){
throw new Exception(‘數據非法‘);
}
// 刪除位置之后的元素向前移動一位
for($k = $i; $k < $count; $k++){
$arr[$k - 1] = $k;
}
unset($arr[$i - 1]);
}
// 順序存儲結構的獲取
function GetElem(Array $arr, int $i){
$count = count($arr);
if($i < 1 || $count === 0 || $i > $count){
throw new Exception(‘數據非法‘);
}
return $arr[$i - 1];
}
原文:https://www.cnblogs.com/cl94/p/13582645.html
總結
以上是生活随笔為你收集整理的php 顺序结构,顺序存储结构php实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: this 和super关键字
- 下一篇: php redis.h,swoole安装